MySQL多表查询
2021-04-13 10:01:28
交叉连接: 不适用任何匹配条件。生成笛卡尔积。
```
select * from employee,department;
```
内连接: 只取两张表的共同部分
```
select * from employee inner join department on employee.dep_id = department.id;
```
左连接: 在内连接的基础上保留左表的记录(如果右表有左表没有会不显示右表有而左表没有的部分)
```
select * from employee left join department on employee.dep_id = department.id
```
右连接: 在内连接的基础上保留右表的记录(和左连接相反,如果左表有右表没有会不显示左表有而右表没有的部分))
```
select * from employee right join department on employee.dep_id = department.id
```
全外连接: 在内连接的基础上保留左右两表没有对应关系的记录(就是左右连接的合体,两者相互没有的都进行保留)
```
select * from employee left join department on employee.dep_id = department.id
union
select * from employee right join department on employee.dep_id = department.id
```