sql语句中嵌套时候用in 和=有什么区别

sql语句中嵌套时候用in和=有什么区别;还有in和exists区别,感觉不要这个exists也能查询出来;我是菜鸟,请高手指教,谢谢!!!... sql语句中嵌套时候用in 和=有什么区别;
还有in 和exists区别,感觉不要这个exists也能查询出来;
我是菜鸟,请高手指教,谢谢!!!
展开
 我来答
wforce
推荐于2017-12-15 · TA获得超过843个赞
知道小有建树答主
回答量:672
采纳率:0%
帮助的人:796万
展开全部
如果子查询只有1条记录,in和=是没有区别,如果子查询有多条记录,用=会出错的,所以in是无论只查询有多少条记录都可以使用,而=只有当子查询只有1条记录的时候才能使用
in和exists理解上其实是差不多,但对数据库而言,in的执行顺序是先执行只查询条件,然后把记录和外查询核对,找符合条件的,
而exists是先执行外查询,再执行子查询,找到外查询记录后和只查询对比符合条件的,
如果外查询和子查询的条目数差异很大,那么效率相差很明显的
hpdbdzh
2010-06-24
知道答主
回答量:6
采纳率:0%
帮助的人:0
展开全部
比如说,

条件 where A in 结果 (B, A 注:这里的A,B是 SQL 结果); 也就是 A = B
or A = A;

条件 where exist 结果 (B, A 注:这里的A,B是 SQL 结果);
exist 一般都需要和子表进行关联,而且关联时,需要用索引,这样就可以加快速度。

条件 A = 结果 A;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式