
一、指代不同
1、JOIN:用于根据两个或多个表中的列之间的关系,从这些表中查询数据。
2、INNER JOIN :组合两个表中的记录,只要在公共字段之中有相符的值。
二、特点不同
1、JOIN:每个主键的值都是唯一的。这样做的目的是在不重复每个表中的所有数据的情况下,把表间的数据交叉捆绑在一起。
2、INNER JOIN :只要在这两个表的公共字段之中有相符值,内部联接将组合两个表中的记录。
三、规定不同
1、JOIN:如果表中有至少一个匹配,则返回行。
2、INNER JOIN :被联接的字段的名称。若不是由数字构成的,则这些字段必须为相同的数据类型并包含同类数据,但无须具有相同的名称。
参考资料来源:百度百科-INNER JOIN
参考资料来源:百度百科-SQL语句大全
学生student表:
课程course表:
交叉连接:
结果为两张表的笛卡尔积:
内连接(inner join ,inner 可以省略)
显示内连接和隐示内连接获得的查询结果是一样的,都是A表和B表的交集(例:A.id = B.id),但是只能查到有关系的信息,如果A表的一条数据的与B表关联的字段没有对应的信息(如:A.id = null),即:这条数据在B表中没有对应的信息,则无法获得。
外连接(outer join,outer可以省略)
左外连接获得的查询结果是左边的表A的全部信息和A,B两张表的交集,左边A表的全部包含A表中在B表中没有对应关系的信息。
右外连接获得的查询结果是右边的表B的全部信息和A,B两张表的交集,右边B表的全部包含B表中在A表中没有对应关系的信息。
内连接关键字:inner join;左连接:left join;右连接:right join。 内连接是把匹配的关联数据显示出来;左连接是左边的表全部显示出来,右边的表显示出符合条件的数据;右连接正好相反。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)