Sql Server中 Exists 关键字的大数据量性能问题

如果要判断sql语句是否有值, 可能回用到 exists 

比如 if exists (Sql语句)        -- 业务逻辑代码 

若这样判断,当sql语句数据量很大,则判断很慢 ,我测试过 当100w 2 秒,当数据量达到 700w 则要22 秒 ,增加11倍 

替代方案,废弃用exists ,直接赋值一个变量 ,在判断变量值 ,sql如下

Declare @exists bit
Select top 1 @exists=1 From {sql语句}
if @exists =1     -- 业务逻辑代码 
这样测试下来 ,700w  用时4秒 

结论:用exists关键字 当数据量 达到 700w以上 速度变慢很厉害,100w 数据还看不出来,数据量超过500w以上慎用 exists 

 

posted @   贝壳11  阅读(193)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示