2012-03-06 37 views
2

香港專業教育學院讀here它(使用它很少)SQL group受累Rollup誤解?

,但我有一個問題理解的東西:

這是數據源:

enter image description here

根據這個查詢:

SELECT Country,[State],City, 
SUM ([Population (in Millions)]) AS [Population (in Millions)] 
FROM tblPopulation 
GROUP BY Country,[State],City WITH ROLLUP 

if im grouping by:國家國家

所以每行都是不同的!

(因爲這個城市的),所以後every行 - 應該有一個「中間總和

但沒有。

我錯過了什麼?

p.s.其結果是:

enter image description here

回答

1

最後一欄從來沒有得到一個「中間和」,即使它不顯着。假設你所有的城市都是「A」或「B」。你不會因爲你已經有了每個城市而想要一個「中間數目」!你已經有了「A」和「B」的款項。此外,由於它們都設置爲空,因此無法區分「A」和「B」的「中間金額」。兩行將是相同的(具有不同的計數)。

+0

爲什麼我在chaning狀態後得到一個總和線,而不是在改變城市之後?他們都出現在小組中......? – 2012-03-06 21:02:11

+0

從查詢中刪除城市,並且在狀態之後也不會獲得總和線。 *最後*列沒有得到一個。城市是最後一個。 – usr 2012-03-06 21:11:28

+0

它在哪裏說(根據定義)最後一列不能得到一個......? – 2012-03-07 07:36:38