我知道我想做什么,但我正在努力寻找最好的方法。
我有一个查询返回给我一些数据:
SELECT
[Description] As [Name], month([OccuredOn]) as [Month], year([OccuredOn]) AS [Year], COUNT([id]) AS Cnt
FROM MyTable
GROUP BY [Description], Year([OccuredOn]), Month([OccuredOn])
ORDER BY [Description],Year([OccuredOn]), month([OccuredOn])
问题是我需要将一些结果合并为一个。
以下是我想要做的,但我需要能够将 string1 和 string2 的记录合并到 string3 的单个记录中。
SELECT
CASE [Description]
WHEN 'String1' THEN 'String3'
WHEN 'String2' THEN 'String3'
ELSE [Description]
END As [Name],
month([OccuredOn]) as [Month], year([OccuredOn]) AS [Year], COUNT([id]) AS Cnt
FROM MyTable
GROUP BY [Description], Year([OccuredOn]), Month([OccuredOn])
ORDER BY [Description],Year([OccuredOn]), month([OccuredOn])
我知道上述方法不是这样做的,但希望有人能指出一种方法,我可以返回我的结果,其中任何带有 string1 或 string2 的描述作为该日期的单个唯一行返回,并具有累积计数。
上面的 SQL 显然返回了 string1 和 string2 的两批数据
谢谢