--前一天
SELECT * FROM [tb]
WHERE [日期字段] BETWEEN
DATEADD(DAY,-1,CONVERT(VARCHAR(8),GETDATE(),112)) AND DATEADD(MILLISECOND,-2,CONVERT(VARCHAR(8),GETDATE(),112))
--上一个月
SELECT * FROM [tb] WHERE [日期字段] BETWEEN
DATEADD(MONTH,-1,DATEADD(DAY,1-DAY(GETDATE()),CONVERT(VARCHAR(8),GETDATE(),112)))
AND
DATEADD(MILLISECOND,-2,DATEADD(DAY,1-DAY(GETDATE()),CONVERT(VARCHAR(8),GETDATE(),112)))
--上一年
SELECT * FROM [tb] WHERE [日期字段]
BETWEEN DATEADD(YEAR,-1,DATEADD(DAY,1-DATEPART(dayofyear,GETDATE()),CONVERT(VARCHAR(8),GETDATE(),112)))
AND DATEADD(MILLISECOND,-2,DATEADD(DAY,1-DATEPART(dayofyear,GETDATE()),CONVERT(VARCHAR(8),GETDATE(),112)))
SELECT * FROM [tb]
WHERE [日期字段] BETWEEN
DATEADD(DAY,-1,CONVERT(VARCHAR(8),GETDATE(),112)) AND DATEADD(MILLISECOND,-2,CONVERT(VARCHAR(8),GETDATE(),112))
--上一个月
SELECT * FROM [tb] WHERE [日期字段] BETWEEN
DATEADD(MONTH,-1,DATEADD(DAY,1-DAY(GETDATE()),CONVERT(VARCHAR(8),GETDATE(),112)))
AND
DATEADD(MILLISECOND,-2,DATEADD(DAY,1-DAY(GETDATE()),CONVERT(VARCHAR(8),GETDATE(),112)))
--上一年
SELECT * FROM [tb] WHERE [日期字段]
BETWEEN DATEADD(YEAR,-1,DATEADD(DAY,1-DATEPART(dayofyear,GETDATE()),CONVERT(VARCHAR(8),GETDATE(),112)))
AND DATEADD(MILLISECOND,-2,DATEADD(DAY,1-DATEPART(dayofyear,GETDATE()),CONVERT(VARCHAR(8),GETDATE(),112)))
SQL查询:获取前一天、上一个月、上一年的数据
9360

被折叠的 条评论
为什么被折叠?



