1、in和exists
in是不断循环子循环,exists不断循环主循环 。即in适合主表数据多,exists适合子表数据多。
2、not in、not exists和in、exists一样
3、not in 的另一种优化
select a.id from tb1 a LEFT JOIN tb2 b on a.id=b.aid where b.aid is NULL
这样就查出了tb1中id不在tb2中的记录
4、用in不识别null,'<>'也不识别null,所以用他们作为条件时要考虑为null的情况
注:给关联字段加索引