【发布时间】:2014-07-17 21:52:22
【问题描述】:
我有特定的场景来显示每个日期的计数列表。以下是查询和我尝试过的内容。
我需要使用以下条件对每一天进行按日期计数。 (计数小于日期)
SELECT COUNT(*)
FROM Queues (nolock)
WHERE InsDateTime < '2014-05-27'
现在,如果我需要 UNION 多天,我需要使用它,如下所示。
SELECT COUNT(*)
FROM Queues (nolock)
WHERE InsDateTime < '2014-05-27'
UNION
SELECT COUNT(*)
FROM Queues (nolock)
WHERE InsDateTime < '2014-05-26'
等等..
我需要在上述条件下动态计算每一天。我从哪里开始感到困惑。截至目前,我正在使用 union 多天来获得输出。
【问题讨论】:
-
您应该学习如何使用
GROUP BY子句。 msdn.microsoft.com/en-us/library/ms177673.aspx -
InsDateTime是否包含时间?如果是这样,这将影响使用GROUP BY InsDateTime的答案 -
我知道 GROUP BY - 这就是为什么由于查询混乱而发布问题的原因。
-
@Lamak 给出了正确的答案,显示了我指出的问题。
-
您的查询可以通过使用 GROUP BY 子句轻松解决... Blam 的回答可以为您提供解决方案,除非我们没有正确理解您想要的输出。
标签: sql-server sql-server-2008 tsql