SQL SERVER查询当天0点、当月1号、当年第一天的方法

查询当天0点

SELECT **DATEADD**(**DAY**, 0, **DATEDIFF**(**DAY**, 0, **GETDATE**()))
image

查询当月第一天

SELECT **DATEADD**(**MONTH**, **DATEDIFF**(**MONTH**, 0, **GETDATE**()), 0)
image

查询当年第一天

SELECT **DATEADD**(**YEAR**, **DATEDIFF**(**YEAR**, 0, **GETDATE**()), 0)
image

如上内容都可以根据情况去调整,比如调整0为-1,那么就会变成去年,上月,或者昨天等
SELECT DATEADD(DAY, -1, DATEDIFF(DAY, 0, GETDATE())) 昨天
image
SELECT DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()), -1) 上月最后一天
image
SELECT DATEADD(YEAR, DATEDIFF(YEAR, 0, GETDATE()), -1) 去年最后一天
image
SELECT DATEADD(MONTH, DATEDIFF(MONTH, -1, GETDATE()), -1) 本月最后一天
image

后面的内容就自行测试即可
应用场景一般包含日期条件筛选,确认数据库的某个时间点等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章