码迷,mamicode.com
首页 > 数据库 > 详细

[小问题笔记(九)] SQL语句Not IN 效率低,用 NOT EXISTS试试

时间:2015-02-12 19:58:40      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:

项目中遇到这么个情况:

t1表 和 t2表  都是150w条数据,600M的样子,都不算大。

但是这样一句查询 ↓

select * from t1 where phone not in (select phone from t2)


直接就把我跑傻了。。。十几分钟,检查了一下  phone在两个表都建了索引,字段类型也是一样的。

 

改成 NOT EXISTS 之后查询 20s ,效率真的差好多。

 select * from t1 
 where  not  EXISTS (select phone from t2  where t1.phone =t2.phone)

 

[小问题笔记(九)] SQL语句Not IN 效率低,用 NOT EXISTS试试

标签:

原文地址:http://www.cnblogs.com/hydor/p/4288739.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!