一、SqlServer查询性能比对-亲测

 1 -- 目标:查询当天的所有数据
 2 -- 说明:表数据行数:960w
 3 
 4   --方法一:使用格式化被查询条件与格式化当前时间比对
 5   SELECT * FROM dbo.TB_NModuleUtilization WHERE  CONVERT(VARCHAR(10),[UseTime],120)=CONVERT(VARCHAR(10),GETDATE(),120) 
 6   --方法二:使用函数DATEDIFF 比对 
 7   SELECT * FROM dbo.TB_NModuleUtilization WHERE  DATEDIFF(day,UseTime,GETDATE())=0
 8   --方法三:使用传统比对
 9   SELECT * FROM dbo.TB_NModuleUtilization WHERE  UseTime BETWEEN CONVERT(varchar(100), GETDATE(), 23) +' 00:00:00' AND CONVERT(varchar(100), GETDATE(), 23) +' 23:59:59'
10 
11 -- 结论:
12 -- 1、 方法三在此情况下最优!
13 -- 2、 写SQL不要盲目使用网上搜索,拿来就用;在完成功能后,有空进行SQL优化,使用最优手段来解决问题!

猜你喜欢

转载自www.cnblogs.com/woadmin/p/9650459.html
今日推荐