连接查询:
将多张表(可以大于2张)进行记录的连接(按照某个指定条件进行数据拼接),最终结果是:记录是有可能变化,字段数一定会增加(至少两张的合并)
连接查询的意义:在用户查看数据的时候,需要显示的数据来自多张表。
连接查询:join,使用方式:左表 join 右表
左表:在join关键字左边的表。
右表:在join关键字右边的表。
连接查询分类:
SQL中将连接查询分为四类:内连接、外连接、自然连接和交叉连接。
交叉连接(cross join):
从一张表中循环取出每一条记录,每条记录都去另外一张表进行匹配,匹配一定保留(没有条件匹配),而连接本身字段就会增加(保留),最终形成的结果叫做:笛卡尔积。
内连接:
[inner] join,从左表中取出每一条记录,去右表中与所有的记录进行匹配,匹配必须是某个条件在左表中与右表中相同最终才会保留结果,否则不不保留。
外连接(outer join):
以某张表为主,取出里面的所有记录,然后每条与另外一张表进行连接,不管能不能匹配上条件,最终都会保留,能匹配,正确保留;不能匹配,其他表的字段都置空null;
外连接分为两种:是以某张表为主:称为主表
left join:左外连接(左连接),以左表为主表;
right join:右外连接(右连接),以右表为主表;
基本语法:左表 left/right join 右表 on 左表.字段 = 右表.字段
了解自然连接: