2017-03-01 67 views
1

值我有以下結構:總和與同一列中的值多行的MySQL中

+====================================================================+ 
+  City | PartyName | VoteCount | VotePercentage + 
+--------------------------------------------------------------------+ 
+ City1  | Party1   | 871    | 1.2    + 
+ City2  | Party1   | 580    | 2.3    + 
+ City3  | Party1   | 149    | 1.2    + 
+ City1  | Party2   | 234    | 0.2    + 
+ City2  | Party2   | 533    | 1.3    + 
+ City3  | Party2   | 655    | 2.2    + 
+====================================================================+ 

此表顯示每城市政黨的選票。我需要一個總結所有投票數量和每一方的百分比的查詢。所以上表應該是這樣的:

+=======================================================+ 
+ PartyName | VoteCount | VotePercentage + 
+-------------------------------------------------------+ 
+ Party1   | 1600   | 4.7    + 
+ Party2   | 1422   | 3.7    + 
+=======================================================+ 

所以,應該省略城市並且將各方的投票數和百分比相加。我目前的查詢:

SELECT City, PartyName, VoteCount, VotePercentage 
FROM elections 
ORDER BY PartyName 

我試過GROUP BY PartyName,但它只顯示我應該出現的行的一小部分。我怎麼能得到上表中的結果?

回答

6

使用此爲您查詢:

SELECT PartyName, SUM(VoteCount), SUM(VotePercentage) FROM elections GROUP BY PartyName 
+1

這是快。謝謝你做了這個訣竅,我可以在10分鐘內接受;) –

+3

@erol_smsr你可能想添加'ORDER BY PartyName ASC' –

+0

@RaymondNijland謝謝雷蒙德,看起來更好,這種方式確實:) –