我有一个表,这个数据替换观点:与子查询
ID | Date | MacroID | FunctionID
---------------------------------------
1 | 1.1.2010 10:00 | core | coreP1
2 | 2.1.2010 11:11 | main | mainP7
3 | 1.1.2010 17:01 | core | coreP2
4 | 3.1.2011 21:00 | top | topP7
5 | 1.1.2010 11:11 | left | leftP0
,我需要得到:
Date | Sum_Macro |
----------------------
1.1.2010 | 2
2.1.2010 | 1
3.1.2010 | 1
其中: 任何DISTINCT日期(剥离时间),我需要一个总和DISTINCT宏发生次数。 在2010年1月1日宏核心和左中运行,因此,2 ...等
我可以在此使用视图做,但我敢肯定有更简单的方法:
CREATE VIEW Days_Macros AS
SELECT DISTINCT MacroID, COUNT(MacroID) AS MacroCnt, CONVERT(varchar, tStamp, 103) AS x
FROM TRADStatMacro
GROUP BY MacroID, CONVERT(varchar, tStamp, 103)
这给我:
MacroID | MacroCnt | x
------------------------------
core | 2 | 1.1.2010
main | 1 | 2.1.2010
top | 1 | 3.1.2010
left | 1 | 1.1.2011
比:
SELECT DISTINCT X, COUNT(MacroCnt) AS Y FROM Test
GROUP BY X
给我的结果。 ...太复杂了,想法有人吗?
感谢名单
嗨米哈尔, 也许我没能清楚地表达自己。我需要一个具有不同日期的输出,以及每天不同的macroID的总和。即使同一个MacroID的不同功能每天超过一次,它仍然应该只计算一次: DISTINCT MacroID /天的总和 –
我改变了查询,现在它给出了精确的结果集,因为您一直在要求。 –
是的,你做到了:O)谢谢你! –