千家信息网

MYSQL的多表查询

发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,1、笛卡儿积select * from emp,dep; select * from emp,dep where emp.dep_id = dep.id;select * from emp,dep w
千家信息网最后更新 2024年11月24日MYSQL的多表查询

1、笛卡儿积

select * from emp,dep; select * from emp,dep where emp.dep_id = dep.id;select * from emp,dep where emp.dep_id = dep.id and dep.name = "技术";

2、内连接:只取两张表有对应关系的记录

select * from emp inner join dep on emp.dep_id = dep.id;select * from emp inner join dep on emp.dep_id = dep.id                                                        where dep.name = "技术";        inner join 连接两个表, where过滤条件,只取条件符合的

3、左连接: 在内连接的基础上保留左表没有对应关系的记录

select * from emp left join dep on emp.dep_id = dep.id;

4、右连接: 在内连接的基础上保留右表没有对应关系的记录

select * from emp right join dep on emp.dep_id = dep.id;

5、全连接:在内连接的基础上保留左、右面表没有对应关系的的记录

select * from emp left join dep on emp.dep_id = dep.idunionselect * from emp right join dep on emp.dep_id = dep.id;
0