1.为什么使用小表驱动大表
小表驱动大表,小的数据集驱动大的数据集
因为连接比较消耗时间
所以,小表写在先查询的地方
select * from employee where id in (select id from department)
2.exists
select * from employee e where id exists (select 1 from department d where e.id = d.id)
3.in与exists
区别:
in是小表驱动大表
exists是大表驱动小表
说明:
在上面的2中,department的数据量大于employee,所以使用exists