SQLServerで複数行のデータを1行に結合します。
複数行のデータを1行にまとめるには、GROUP BY句と集計関数を使用することができます。
以下のデータがあると仮定します。
生徒たち
ID名前得点1
アリス
851
アリス
902
ボブ
802
ボブ
753
チャーリー
953
チャーリー
85
各生徒の成績を1行にまとめるには、以下のクエリを使用してください。
SELECT
id,
name,
GROUP_CONCAT(score ORDER BY score SEPARATOR ', ') AS scores
FROM
students
GROUP BY
id, name;
結果:
ID名前点数1
アリス
85、902
ボブ
75、803
チャーリー
85、95
クエリ内で、GROUP_CONCAT関数を使って各生徒の成績を1つの文字列として結合し、コンマで区切ります。ORDER BY句を使って成績の順序に並べることができます。