连接查询
连接方式
1.交叉连接:交叉连接是将两个表不设定任何条件的连接结果。这种方式会产出好多个无效行。所以不用。
2.内连接
语法 select * from tb_name join tb2_name on tb_name.id=tb2_name.id(注意 两个id字段的值应该是相等的)
3.外连接
左(右)外连接 select * from tb_name left (right)join tb2_name on tb_name.id=tb2_name.id
在内连接的结果基础上,加上右边表中所有不符合连接条件的数据,相应本应放左边表的字段的位置就自动补为“null”值
全外连接select * from tb_name all join tb2_name on tb_name.id=tb2_name.id
4.子查询
子查询就是把一个查询的结果当作另一个查询的条件。
select * from tb_name where id in(select id from tb2_name where id=1)
5.联合查询
union
联合查询就是将两个select语句的查询结果“层叠”到一起成为一个“大结果”。
两个查询结果的能够进行“联合”的先觉条件是:结果字段数相等。