同じ列に2つのテキスト行を追加する方法、またはテキスト列にsum()を適用できる代替集計関数を追加する方法を教えてください。T-SQLの同じ列に2つのテキスト行を追加する方法
id Name
1 A
1 B
2 C
基このようなID
結果によって。
id Names
1 A,B
2 C
同じ列に2つのテキスト行を追加する方法、またはテキスト列にsum()を適用できる代替集計関数を追加する方法を教えてください。T-SQLの同じ列に2つのテキスト行を追加する方法
id Name
1 A
1 B
2 C
基このようなID
結果によって。
id Names
1 A,B
2 C
これを試してみてください:
declare @t table(id int, name varchar(50))
insert @t values(1, 'A')
insert @t values(1, 'B')
insert @t values(2, 'C')
select t.id,
,STUFF((
select ',' + [name]
from @t t1
where t1.id = t.id
for xml path(''), type
).value('.', 'varchar(max)'), 1, 1, '') [Names]
from @t t
group by t.id
結果:
id Names
----------- --------------
1 A,B
2 C
を、あなたはより良い説明することができますしてください?あなたは何をしようとしているのですか?あなたのテーブル定義といくつかのデータを表示してください – Marco
"同じ列に2つのテキスト行" - 多値列が好きですか?通常は、xmlなどのメタデータを使用するか、列の複数値を別の表に正規化します。 – StuartLC
Transact-SQLの行の値を連結する:http://www.projectdmx.com/tsql/rowconcatenate.aspx – idstam