首页 > 数据库技术 > 详细

msql数据库in和exists用法比较

时间:2015-09-21 23:46:36      阅读:336      评论:0      收藏:0      [点我收藏+]

exists:用法:select * from table1 where exists (select * from table2 where table1.id = table2.id )
返回table1中和table2中id相同的记录(双重循环)结果和in语法一样,思想不一样,
in:select * from table1 where id in (select id from table2 )

2者思路不一样:exists:先获得每一条table1的数据,然后获得id字段,去table2表内查找对应值,找到说明符合条件
in:先获得所以的id可能性,再检索table2数据时,判断当前的id是否在id集合内

对于in:如果table2中数据量太大,不使用,因为他要先把这么多数据找出来并存储,开销大,可以用exists

msql数据库in和exists用法比较

原文:http://www.cnblogs.com/hhfhmf/p/4827571.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!