码迷,mamicode.com
首页 > 数据库 > 详细

SQL 语句判断记录是否存在

时间:2017-01-23 15:17:02      阅读:467      评论:0      收藏:0      [点我收藏+]

标签:bsp   isnull   问题   null   else   网上   table   from   简洁   

今天查了下,发现网上的没有一个sql语句写的好的。

判断记录是否存在,要不是语句不够简洁,要不就是性能有很大问题。

 

我进行了优化后,最简洁简单性能最优的的sql语句,用来判断表中的记录是否存在:

select isnull((select top(1) 1 from tableName where conditions), 0)

 

网上的常见的有问题的语句:

 

错误1:

select COUNT(*) from tableName where conditions

count(*) 计算会对聚集索引进行扫描和计算,reads 特别多,特别是 cpu 资源占用极大。

 

错误2:

if exists (select * from tableName where conditions) select ‘1‘ else select ‘0‘

这种方法稍微有点灵性,但是却很不简洁。

同时由于 select * 前面有 exists ,所以该语句并没有性能问题,只是语法不够简洁

 

SQL 语句判断记录是否存在

标签:bsp   isnull   问题   null   else   网上   table   from   简洁   

原文地址:http://www.cnblogs.com/xunziji/p/6343891.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!