2012-03-06 8 views
2

アイブ氏は(めったにそれを使用しない)それについてロールアップの誤解によるSQLグループ

hereを読んで、私は何かを理解し、問題を持っている:

これはデータソースです:

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 

メーリングリスト:

ので、すべての行は別個のものです!

(都市のため)がそうevery行の後 - 「中間和

が存在すべきであるが、そこではありません。

私は何が欠けていますか?

p.s.結果は次のとおりです。

enter image description here

答えて

1

最後の列は、それが明瞭でない場合であっても「真ん中の合計を」取得することはありません。すべての都市が「A」か「B」のいずれかであると言います。あなたはすでにそれを持っているので、あなたは都市ごとに "中間合計"を望んでいないでしょう!すでに "A"と "B"の合計があります。また、「A」と「B」の両方がnullに設定されているため、「中間合計」を区別できませんでした。 2つの行は同一である(カウントが異なる)。

+0

都市を変更した後ではなく、居住状態の後に合計行が得られるのはなぜですか?彼らは両方でグループに出演します...? –

+0

クエリーから市を削除すると、状態の後に合計行も得られません。 *最後の列は1つを取得しません。都市は最後です。 – usr

+0

最後の列が1つを得ることができないのはどこですか(定義によって)...? –

関連する問題