0
使用下面的代碼:SQL:SUM的MAX各組
SELECT [Section]
,[Subgroup]
,[ID]
,SUM([Amount]) AS [SUM]
FROM Table
GROUP BY [Section], [Subgroup], [ID]
ORDER BY [Amount] DESC,[Section]
我是能夠產生如下:
Section Subgroup ID SUM
A G 1 56787
A G 2 45687
C W 3 36746
C W 4 27456
C W 5 13546
C G 6 9345
C T 7 8535
A G 8 8435
C T 9 7245
A G 11 7243
B T 10 6245
B T 12 5768
C T 13 4676
A G 14 3564
A G 16 3465
C T 15 2576
B T 17 2478
A S 18 1856
C W 19 1567
B T 20 1244
A C 22 1146
C T 21 1056
C T 23 945
C T 24 933
B G 27 845
C G 25 834
A A 26 779
B T 28 742
C C 29 734
B G 31 689
C T 30 623
A S 33 587
A S 34 565
A E 32 489
B T 35 478
C G 37 378
B T 39 256
但我想是每個最高總和小組中的每個部分:
Section Subgroup ID SUM
A G 1 56787
A S 18 1856
A C 22 1146
A A 26 779
A E 32 489
B T 10 6245
B G 27 845
C W 3 36746
C G 6 9345
C T 7 8535
C C 29 734
我嘗試使用「過度」和「PARTITION BY」,但不能讓他們的工作。我也看着'RANK'。我錯過了什麼?
謝謝。
難道是可以接受的包裹你的第一個查詢的結果在一個子查詢或CTE,然後做一個查詢? – Anssssss
您確定要在「GROUP BY」中包含「ID」嗎? –
是的,我在這種情況下。 – Cinji18