【发布时间】:2014-04-28 04:02:18
【问题描述】:
我需要像这样执行我的语句:
Select myColumn
From myTable
WHERE
CASE
WHEN Datepart(y,@year_end) = 2010 and Datepart(m,@year_end) = 3 then CalendarQuarter in (@Q1,@Q2,@Q3,@Q4)
WHEN Datepart(y,@year_end) = 2010 and Datepart(m,@year_end) = 6 then CalendarQuarter in (@Q2,@Q3,@Q4)
WHEN Datepart(y,@year_end) = 2010 and Datepart(m,@year_end) = 9 then CalendarQuarter in (@Q3,@Q4)
END
我无法正确使用语法。基本上,当我提供 2010 年和第 3 个月时,我希望使用第一个 IN 语句。如果我说月份 = 6,那么我想使用第二个 IN 语句。
【问题讨论】:
-
对于
year,语法为datepart(yy, date),datepart(y,date)将返回dayofyear
标签: sql sql-server tsql case where