1.创建表以及加载数据:
CREATE TABLE `r` (`a` bigint(255) DEFAULT NULL,`b` bigint(255) DEFAULT NULL,`c` bigint(255) DEFAULT NULL,`d` bigint(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;INSERT INTO `r`(`a`, `b`, `c`, `d`) VALUES (6, 3, 1,5);
INSERT INTO `r`(`a`, `b`, `c`, `d`) VALUES (6, 1, 5,1);
INSERT INTO `r`(`a`, `b`, `c`, `d`) VALUES (6, 5, 7,4);
INSERT INTO `r`(`a`, `b`, `c`, `d`) VALUES (6, 3, 7,4);CREATE TABLE `s` (`c` bigint(255) DEFAULT NULL,`d` bigint(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;INSERT INTO `s`(`c`, `d`) VALUES (1,5);
INSERT INTO `s`(`c`, `d`) VALUES (7,4);
2,查询结果:
r表:

s表:

笛卡尔积:
SQL语句:
select * from r,s;

内连接
SQL语句:
select * from r inner join s on r.c = s.c;

外连接
SQL语句:
select * from r left join s on r.c = s.c;

自然连接:两张表中的名称和类型完全一致的列进行内连接
SQL实现:
select * from r natural s;

解析
“自然连接”和“内连接”的区别,在于对“重合的相同的部分”处理方式不同natrual join 自然连接"的处理方式:既然重复了,就丢掉一份,好比distinct(优胜劣汰,自然法则)inner join 内连接”的处理方式:虽然重复,但两份都保留
关于连接的几何表示图:



















