2012-04-19 10 views
-1

のテーブルに同一の項目の合計数を取得する私はmysqlの

id | upc | count 
---------------- 
1 | 100 | 5 
2 | 100 | 12 
3 | 101 | 3 
4 | 100 | 7 

と私は、個々のUPCの

の予想される出力の合計を取得したいと思いのような設定があるテーブルを持っている:

upc | count 
--- | ----- 
100 | 24 
101 | 3 

と私はそれについてどう考えているのかわかりません。どんな助けもありがとう。

+0

PHP配列のすべての行を手作業で追加していましたが、何らかの理由でそのような和を使うことはできませんでした。助けてくれてありがとう:) – Rob

+0

あなたは正しいです、それは重複しています、私が検索していたときに私はgroup_concatを使っていくつかの他の質問を見つけましたが、それは私が探していたものではありませんでした。 – Rob

答えて

2

利用GROUP BYとSUM集約関数:

SELECT upc, SUM(count) AS count 
FROM yourtable 
GROUP BY upc 
+0

それは完璧に働いた、ありがとう:) – Rob

3
SELECT upc,SUM(count) FROM table GROUP BY upc ; 

編集:この場合にはバッククォートを使用する必要はありません(countが有効な列名です)。

+2

それは本当ではない。カウントは* [予約語]ではありません(http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html)。列名として 'count'を使うことを避けるべき多くの良い理由があるのは事実ですが、それは完全に合法です。マニュアルからの引用: "たとえば、COUNTは列名として使用できます。" –

+0

@MarkByersあなたが正しいです、予約語の長いリストから 'COUNT'はそれらの一つではありません。私はこれを訂正します。 – dgw