【发布时间】:2016-04-28 04:51:07
【问题描述】:
我遇到了业务流程特有的问题。我的用户需要知道在特定结束时间之前有多少个日期在小时或当天不匹配。
这是一个例子。
AAA, 2016-03-15 16:00:28.967, 2016-03-15 16:02:58.487, 2016-03-17 14:01:24.243
在上面的示例中,id AAA 有 3 个条目。我只需要计算时间和日期不匹配的那些。所以实际的计数应该是 2。
我必须在 SQL 中完成这一切,不能使用 CTE。它需要是子选择或某种类型的连接。
类似的东西。
SELECT id, date, (
SELECT COUNT(*)
FROM x
WHERE day!=day
AND hour!=hour AND date < z
) AS DateCount
结果将是AAA, 2
我正在考虑某种类型的递归比较,但我不确定如何在没有 CTE 的情况下完成此操作。
【问题讨论】:
-
我不能使用 CTE,因为这是一个更大的语句的一部分。
标签: sql sql-server sql-server-2012