2013-08-26 12 views
5

ように私は、列を持つテーブルがある:を連結列の値単一値のSQL Server 2005の

|-------------| 
| ColumnName | 
|-------------| 
| Value One | 
| Value Two | 
| Value Three | 
| Value Four | 
| Value Five | 
|-------------| 

私は、変数を宣言

DECLARE @ColumnNameList VARCHAR(MAX) 

と私は私の変数に以下の値を見つける必要があります

'Value One,Value Two,Value Three,Value Four,Value Five' 

誰でもこの作業を手伝うことができますか?

ありがとうございます。

+0

が重複する可能性:// stackoverflowの。グループ/コラム/質問/ 6579440 /どのように連結するすべての文字列を特定の列から各グループに) – Satpal

+0

GROUP_CONCAT()メソッドを使用 –

答えて

5
SELECT @ColumnNameList = STUFF 
(
    SELECT ',' + ColumnName 
    FROM TableName 
    ORDER BY ColumnName 
    FOR XML PATH('root') 
), 1, 1, '' 
1
SELECT @ColumnNameList = coalesce(@ColumnNameList + ',' + ColumnName, ColumnName) 
FROM <table> 
SELECT @ColumnNameList 
-1

dbo.columnnames内のデータは次のとおりです。 れる列名 バリューワン 値二 値三 バリュー四 値ファイブ

CODE:

declare @lv_table table(column_values varchar(100)) 

declare @product_v varchar(max) 

insert into @lv_table 

select * from dbo.columnnames 


select ''''+ 
    Stuff(
     (
    SELECT ',' + column_values 
    FROM @lv_table 
    FOR XML PATH('') 
    ), 1, 1, '') +'''' 

出力:

「バリューワン、バリュー二、三値、値四、五値」[グループごとに特定の列からすべての文字列を連結する方法](HTTPの

関連する問題