sqlserver exists和in 与exists和not in

WBOY
發布: 2016-06-07 15:19:55
原創
949 人瀏覽過

1、exists 和 in 1.1 正常情况下exists和in的效果是一样的,如图试验 即使子查询中包含null也没有关系,依然可以正常使用 1.2 in 和 exists效率比较 先看in 由图中可以100万的数据 用in的时间是14秒 用exist的时间也是14秒。 总结的规律是in和exists查询的效

1、exists 和 in

1.1 正常情况下exists和in的效果是一样的,如图试验

 

sqlserver exists和in 与exists和not in

即使子查询中包含null也没有关系,依然可以正常使用

1.2 in 和 exists效率比较

先看in

sqlserver exists和in 与exists和not in

由图中可以100万的数据 用in的时间是14秒

sqlserver exists和in 与exists和not in

用exist的时间也是14秒。

总结的规律是in和exists查询的效率相差不多

 2、not in 和not exists

 sqlserver exists和in 与exists和not in

可以看出not in 如果子查询中有NUL将不会出现任何值。

所以再用not in时,最好在子查询中加上is not null

如图:

sqlserver exists和in 与exists和not in

由图可知加上限制正常显示了。


再看Not exists

sqlserver exists和in 与exists和not in

可以看出即使子查询寻有null,依然可以查出正确的数据

 2.2 在效率方面 not in 和no exists也是相差不多

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!