导读 您好,今天小编胡舒来为大家解答以上的问题。exists和in的效率区别,exists和in的区别相信很多小伙伴还不知道,现在让我们一起来看看吧!1、...

您好,今天小编胡舒来为大家解答以上的问题。exists和in的效率区别,exists和in的区别相信很多小伙伴还不知道,现在让我们一起来看看吧!

1、区别:in是关系运算符,exists是相关子查询。

2、exists的效率比in高的说法不正确,要看具体情况,尽可能利用索引。

3、例:设有两个表td(大表)和tx(小表),看下面的查询:select * from td where col in (select col from tx); --利用了td的索引 select * from td where exists (select col from tx where col=td.col); --利用tab2的索引 结果:第一句效率高。

4、2、select * from tx where col in (select col from td); --利用了tx的索引 select * from tx where exists (select col from td where col=tx.col); --利用了td的索引 结果:第二句效率高。

本文就为大家分享到这里,希望小伙伴们会喜欢。