我有一個表,這個數據替換觀點:與子查詢
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)謝謝你! –