当前位置: 代码迷 >> Sql Server >> select 语句执行速度 小疑点
  详细解决方案

select 语句执行速度 小疑点

热度:35   发布时间:2016-04-24 09:32:12.0
select 语句执行速度 小问题
请问 这句执行速度

select 
  ,CASE WHEN 条码类型='00000101' THEN -1*CAST([销售数量] AS money)/100 
           WHEN 条码类型='10000001' THEN -1*CAST([销售数量] AS money)/100 
           ELSE CAST([销售数量] AS money)/100 
        End AS SalesQty
 




select 
  ,CASE WHEN 条码类型='00000101' THEN -1*CAST([销售数量] AS money)
           WHEN 条码类型='10000001' THEN -1*CAST([销售数量] AS money)
           ELSE CAST([销售数量] AS money)
        End/100 AS SalesQty
 



在执行上那个速度更快或者应该是一样?

------解决思路----------------------
这个即使有差异应该也不明显,你可以自己测一下,重点是要保证 数据精确
------解决思路----------------------
应该是一样的,都只执行了一次除法

在现在的配置加减乘除之类的其实都可以忽略性能消耗了
------解决思路----------------------
至少效率在数量级上是一样的

不过,扯点的说,字符串少点,从编译上想应该会快一点点,不过是你感觉不出来的区别
------解决思路----------------------
除非你能把CPU跑到100%,否则执行速度的瓶颈总是在硬盘存取上。
本来就是经常又空闲的CPU多执行几次运算,对执行速度毫无影响。
------解决思路----------------------
忽略不计!!
  相关解决方案