如何构造一个 SQL 语句,该语句始终根据 GETDATE() 返回上一年 7 月 1 日的开始日期和当年 6 月 30 日的结束日期?现在我有
Dateadd(yy, Datediff(yy,1,GETDATE())-1,0) AS StartDate,
DateAdd(dd,-1,Dateadd(yy, Datediff(yy,0,GETDATE()),0)) AS EndDate
将分别返回 2012 年 1 月 1 日和 2013 年 12 月 31 日。
最佳答案
您可以在当前脚本中添加另一个 DATEADD():
SELECT DATEADD(month,6,DATEADD(yy, DATEDIFF(yy,1,GETDATE())-1,0)) AS StartDate
,DATEADD(month,6,DATEADD(dd,-1,DATEADD(yy, DATEDIFF(yy,0,GETDATE()),0))) AS EndDate
关于sql - 在 SQL 中创建动态日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17410071/