私の問題は簡単です:
テーブルの出力を変換しようとし続けます
1 a
1 b into 1 a b c
1 c
2 d
2 e into 2 d e f
2 f
テーブルには常に 3 行のセットがあり、上記のように 4 列のテーブルになります。
ループしようとしたら行き詰まりました…</p>
編集: SQL_SERVER 用です
私の問題は簡単です:
テーブルの出力を変換しようとし続けます
1 a
1 b into 1 a b c
1 c
2 d
2 e into 2 d e f
2 f
テーブルには常に 3 行のセットがあり、上記のように 4 列のテーブルになります。
ループしようとしたら行き詰まりました…</p>
編集: SQL_SERVER 用です
MY_SQL の場合
SELECT A, group_concat(B SEPARATOR " ") as BResult
FROM TABLE
GROUP BY A
ただし、単に行を列に変換しようとしている場合...
dbms がサポートしている場合は、cte を使用できます。ピボットを見ることができます。rdbms がサポートしている場合。
コンストラクトを使用して、次のようFOR XML PATH
に MySQL をエミュレートできます。GROUP_CONCAT
select
ID,
stuff((select ' ' + Value
from YourTable t2 where t1.ID = t2.ID
for xml path('')),
1,2,'') [Values]
from YourTable t1
group by ID
このトピックに関するその他の回答: