我对MS-SQL知之甚少,但我需要做一个报告。
我有这个查询:
Select
a.HPD_CI as HPD_CI_Grouped,
count(a.HPD_CI) as HPDCant, b.submit_date
From
HPD_Help_Desk a, Tiempos_Grupos b--, Tiempos_grupos b
GROUP BY a.HPD_CI, b.submit_date
结果是:
HPD_CI_GROUPED HPDCant SUBMIT_DATE
ADSL1 1 2013-04-10 19:22:59.0
ENL001 4 2013-04-10 19:22:59.0
OSE001 18 2013-04-10 19:22:59.0
OSE002 9 2013-04-10 19:22:59.0
OSE003 1 2013-04-10 19:22:59.0
REF0001 44 2013-04-10 19:22:59.0
REF0002 11 2013-04-10 19:22:59.0
REF0003 8 2013-04-10 19:22:59.0
实际上我正在做的是计数,但我需要将 SUBMIT_DATE 与下一个进行比较,并且仅当下一个 submit_date 存在于定义的范围(天)之间时才计数。
假设我定义“6 天”... 我发现 OSE001 有 2013-04-10 19:22:59.0 作为 submit_date,如果在 2013-04-10 19:22:59.0 和 2013-04- 之间还有另一个 OSE001 16 19:22:59.0,那么它必须计数,否则不要。
它可能类似于:
COUNT(CASE Submit_Date - **NEXT**submit_date < 6 days then 1 else 0 end)
(当然那个例子不起作用,因为我不知道如何调用 * NEXT *date)