SQL多表查询

多表关系

 

 

 

多表查询概述

 

内连接

 

 

外连接

 无论是左外还是右外都是可以互相替换的,平时左外用的比较多

 

自连接

我们需要根据自己表的某个信息再去查询自己表,就叫做自连接(自查询),自连接既可以是内连接也可以是外连接

有如下员工表结构,需求:查出员工及其领导的信息,但是领导也属于员工(managerid与主键id关联了)

思路:不要把这个需求看作单表查询,当成两表联查,关联的条件是managerid=emp.id

 注意点:自连接必须要给表起别名

 

联合查询

 

联合查询和or的区别:

联合查询的结果也可以用or连接条件来查出,但是or会使索引失效,查询效率低;联合查询的缺点是不同表查询结果的列数必须一致,字段类型也必须一致

union 和 union all的区别:

union all是直接将两个查询的结果进行合并,union会将查询的结果进行去重

 

 

 

子查询

标量子查询

列子查询

行子查询

 

 

表子查询

 

多表查询案例

 

posted @ 2023-08-15 18:00  去公司搞点薯条  阅读(25)  评论(0)    收藏  举报