4

次のようなテーブルがあります。

 num | type
-----+------
 123 | 3
 123 | 2
 123 | 3
 123 | 2
 124 | 3
 124 | 1
 124 | 3
 124 | 3

num列ごとにグループ化し、それぞれの異なるタイプをカウントする列を作成したいと考えています (ここで可能なすべての値を事前に知っています)。だから私は得るだろう:

 num | 1 | 2 | 3
-----+---+---+---
 123 | 0 | 2 | 2
 124 | 1 | 0 | 3

これはSQLで可能ですか?MySqlを使用しています。

4

1 に答える 1

7
SELECT `num`,
    SUM(type = 1) as `1`, 
    SUM(type = 2) as `2`, 
    SUM(type = 3) as `3`
FROM `your_table`
GROUP BY `num`
于 2012-06-28T08:01:14.193 に答える