ここでは、SQL を使用して複数のデータを 1 つにまとめる方法を示します。

シナリオ例

次のテーブルデータを例として使用します。

class gender name
1 M LiLei
1 F HanMM
1 M Jim
2 F Kate
2 M Peter
シナリオ 1

一般的なシナリオは次のとおりです。

class names
1 LiLei,HanMM,Jim
2 Kate,Peter

区切り文字を使用して文字列を連結するには、次の文を使用します。

SELECT class, wm_concat(',', name) FROM students GROUP BY class;
シナリオ 2

もう 1 つの一般的な必須条件は次のとおりです。

class cnt_m cnt_f
1 2 1
2 1 1

複数の列を変更する必要がある場合は、次の文を使用します。


SELECT 
class
,SUM(CASE WHEN gender = 'M' THEN 1 ELSE 0 END) AS cnt_m
,SUM(CASE WHEN gender = 'F' THEN 1 ELSE 0 END) AS cnt_f
FROM students
GROUP BY class;