SQL Count具有多个条件和条件

时间:2014-06-11 14:34:10

标签: sql sql-server-2008 count conditional

我试图在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语法中是否可行。

提前致谢。

1 个答案:

答案 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')
    )