【发布时间】:2019-04-17 15:24:58
【问题描述】:
是否可以在 WHERE 子句中动态设置日期,以便如果当前日期 (GETDATE() ?) 小于当年的 7 月 1 日 (7/1) (当GETDATE() 运行时)然后将WHERE 子句中的日期设为上一个 年的7/1。如果当前日期大于当年的 7/1,则将 WHERE 子句中的日期设为 当前 年的 7/1。下面是几个例子。
--EXAMPLE 1:
GETDATE() = 4/17/19
SELECT A.DATE
FROM TEST_TABLE A
WHERE A.DATE >'2018-07-01' <-- This would be dynamic based on the current date being less than 7/1 of this year, so use previous year.
--EXAMPLE 2:
GETDATE() = 7/2/19
SELECT A.DATE
FROM TEST_TABLE A
WHERE A.DATE > '2019-07-01' <-- 2019 Because current date is greater than 7/1 of current year we use the current year.
我将在视图中使用它,所以我不相信我可以声明和使用变量,所以我正在寻找其他选项。
【问题讨论】:
标签: sql sql-server sql-server-2014