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

数据库优化技巧之in和not in

时间:2017-06-08 19:47:01      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:select   rac   mod   sts   sql语句   优化   适用于   语句   exist   

在编写SQL语句时,假设要实现一张表有而另外一张表没有的数据时。 通常第一直觉的写法是:

select * from table1 where table1.id not in(select id from table2)

这样的写法尽管看起来非常直观。可是运行的效率会非常低下,在数据量非常大的时候效果尤其明显,我们推荐使用not exists或左连接来取代。

select a.* from table1 a left join table2 b on a.id=b.id where b.id is null

相同。这样的方法也适用于in

数据库优化技巧之in和not in

标签:select   rac   mod   sts   sql语句   优化   适用于   语句   exist   

原文地址:http://www.cnblogs.com/liguangsunls/p/6964380.html

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