-2
2列の結果セットで、1つの列をピボットする必要があります。例えば、 IDごとのメールアドレスの数は変えることができSQL Server 2012の列への列
。 PIVOTがこの要件に対応するかどうかは不明です。私は一時テーブルを使用することはできません
、あなたは、この目的のためにfor xml path('')
と組み合わせるcross apply
使用できるSQL Serverでの唯一の選択クエリ
2列の結果セットで、1つの列をピボットする必要があります。例えば、 IDごとのメールアドレスの数は変えることができSQL Server 2012の列への列
。 PIVOTがこの要件に対応するかどうかは不明です。私は一時テーブルを使用することはできません
、あなたは、この目的のためにfor xml path('')
と組み合わせるcross apply
使用できるSQL Serverでの唯一の選択クエリ
:
select distinct t1.Id, t3.EmailAddress
from TABLE t1
cross apply (select t2.EmailAddress+' '
from TABLE t2
where t2.Id=t1.Id for xml path('')
) t3 (EmailAddress)
order by t1.Id
は、テキストと予想される出力などのように、サンプルデータを共有してくださいtext – TheGameiswar
電子メールアドレスの数、したがって予想される出力の列数が異なる場合は、おそらく動的SQLが必要です。しかし、より重要なのは、どのような価値を使ってピボットするのでしょうか? –
これは一般的な動的ピボットまたは動的クロス集計のようです。それだけでこれを行う方法の例は何百もありますが、何千もありません。インターネットの周りには無数の人がいます。 –