我试图在SQL2008中编写一个count语句,返回满足某些特定条件的实例,其中包括一些条件。
伪代码示例:
SELECT COUNT(*)
FROM Table T
WHERE T.Value IN ('Value', 'Value2', 'Value3')
AND IF T.Value = 'Value2'
THEN T.Date must be between @Date1 AND @Date2
这在SQL语法中是否可行。
提前致谢。
答案 0 :(得分:2)
SELECT COUNT(*)
FROM Table T
WHERE T.Value IN ('Value', 'Value2', 'Value3')
AND (
(T.Value = 'Value2' AND
T.Date between @Date1 AND @Date2)
OR (T.Value <> 'Value2')
)