6

I have a table with a column:

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

I will declare a variable,

DECLARE @ColumnNameList VARCHAR(MAX)

and I should find the below value in my variable

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

Can anyone help me out in doing this?

Thanks in advance.

marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
user2717449
  • 61
  • 1
  • 1
  • 2
  • possible duplicate of [How to concatenate all strings from a certain column for each group](http://stackoverflow.com/questions/6579440/how-to-concatenate-all-strings-from-a-certain-column-for-each-group) – Satpal Aug 26 '13 at 09:09
  • Use GROUP_CONCAT() Method – Viraj Dhamal Jan 20 '14 at 10:00

3 Answers3

5
SELECT @ColumnNameList = STUFF 
(
    SELECT ',' + ColumnName  
    FROM TableName
    ORDER BY ColumnName  
    FOR XML PATH('root')
), 1, 1, ''
Giannis Paraskevopoulos
  • 18,261
  • 1
  • 49
  • 69
2
SELECT @ColumnNameList = coalesce(@ColumnNameList + ',' + ColumnName, ColumnName) 
FROM <table>
SELECT @ColumnNameList
t-clausen.dk
  • 43,517
  • 12
  • 59
  • 92
-1

Data in dbo.columnnames is: columnnames Value One Value Two Value Three Value Four Value Five

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, '') +''''

output:

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

Hemang
  • 26,840
  • 19
  • 119
  • 186
karan arora
  • 176
  • 9