一个zirancun 14万数据量,一个 zirancuntd 19万数据,这两个 zirancuntd.distid 与zirancun.id进行关联,查询 zirancuntd.distid不存在与zirancun中
1.SELECT id from zirancuntd where (select id from zirancun where id=zirancuntd.distid) is null
2.select id from zirancuntd where distid not in(select id from zirancun)
这两条语句执行效率差别很大
第一个语句几秒钟就查询出来,但是第二条语句却一个小时也没有出来,起初以为没有设置这两个表的id,查询没有优化,但是后来设置了主键后,两个语句的查询效果依旧很大。不知道为什么?记录一下~