2012-04-02 10 views
2

私は特定の用語に一致する金額とそれに一致しない金額を合計する方法を探しています。私の表は、このwhere句を指定して選択し、同じクエリ内に指定しないでください

user amount description 
1  34  bike 
1  78  toys 
2  3  fuel 
2  12  bike 

のように見える場合たとえば、私は最後に次のようになりますテーブルを取得しようとしている:

user amount spent on bike amount spent total 
1  34     112 
2  12     15 

私はあなたがmysqlの

答えて

1

を使用していますSUMグループ内のCASEステートメントを使用することができます。

SELECT user, 
     SUM(CASE WHEN description = 'bike' THEN amount ELSE 0 END) bike_amount, 
     SUM(amount) total_amount 
FROM mytable 
GROUP BY user 
関連する問題