读书人

怎么判断前3天这个SMS_HistoryRecord表

发布时间: 2014-01-19 01:28:51 作者: rapoo

如何判断前3天这个SMS_HistoryRecord表有没有记录

                                                                            
[解决办法]
WHERE ( HistoryYear + HistoryMonth + HistoryDay ) = CONVERT(VARCHAR(8), @yesterday, 112)
我觉得最好把年月日何在一列,你现在这样设计会导致索引无效
[解决办法]
可以适当的优化:

--做判断先查询统计表是否有记录-前1、2、3天的数据
select @SubAMount_1=COUNT(case when CONVERT(varchar(8),SubmitDate,112)= CONVERT(varchar(8),DATEADD(day,-1,getdate()),112) then 1 else null end)
@SubAMount_2=COUNT(case when CONVERT(varchar(8),SubmitDate,112)= CONVERT(varchar(8),DATEADD(day,-2,getdate()),112) then 1 else null end)
@SubAMount_3=COUNT(case when CONVERT(varchar(8),SubmitDate,112)= CONVERT(varchar(8),DATEADD(day,-3,getdate()),112) then 1 else null end)
from SMS_SubmitRecord

读书人网 >SQL Server

热点推荐