2013-12-11 69 views
0

我需要選擇2列的所有不同組合:區域和組合,以及爲總列中的每個組合選擇總和。SQL選擇不同的列組合和總和

可以說我有4列

ID Region Make total 
1  E  blue  2 
2  E  red  1 
3  E  blue  1 
4  W  green 2 
5  W  blue  2 
6  W  red  1 
7  W  red  2 

現在我想的區域,使所有獨特的組合一個SUM(總)。

所以我的結果應該是這個樣子:

Region  Make  SUM 
    E  blue  3 
    E  red  1 
    W  green  2 
    W  blue  2 
    W  red  3 

我只需要一個簡單的SELECT語句,如:

select distinct........... , SUM(total) 
from table1 
+1

你有什麼累了這麼遠嗎? – phadaphunk

+1

我不想說它並不複雜,因爲不是每個人都有相同的SQL知識,但我想看看你是否真的在這裏嘗試過某些東西。像...你有沒有試圖使你的查詢無法正常工作,你希望我們看一下你準備好的有關distinct或SUM的查詢類型。總的來說,我看起來像一個代碼這對我來說是個問題。 – phadaphunk

+0

我明白了,謝謝。該查詢實際上是更復雜的,我只是想看看是否有人可以做到這一點,所以我可以調整到我需要的。但我意識到我只是在聲明中包含了小組中的其中一列。謝謝你的幫助。 –

回答

6

您可以使用group by基於列的不同組合來計算總和你指定後組按類別

Select Region,Make,SUM(total) as total from table1 group by Region,Make 
2

你可以彙總如下:

select region, make, sum(total) 
from table1 
group by region, make 
3

試試這個:

select Region, Make, sum(total) 
from table1 
group by Region, Make 
+0

它與其他兩個答案有什麼不同? –

+0

@RahulTripathi - 在相對簡短的答案中,有時候不止一個人同時寫同一個答案。只要我發佈這個答案,我也看到其他人也出現了。它發生了。 –

+0

: - 我明白了。我已經給所有答案+1。最初我錯了,因爲我認爲,而不是給出相同的答案,我們可以upvote它 –

3
Select Region, Make, Sum(total) 
From TableName 
Group By Region, Make 
+0

我認爲這將是一個更好的主意,upvote答案,而不是發佈類似的答案! –

+1

@Rahul:我不瞭解你的問題和你的語氣。所有答案都幾乎同時發佈。 – Fabian

+0

@Fabian: - 你的回答和Haji的回答之間的區別只有2秒,可以接受。我沒有說什麼要批評。我只是指出,提出一個答案然後發表類似的答案會更好。沒有消極的想法! –