0

I Have a table with below data

column1   column2

DIU02   3D ITEM MAINTENANCE
DIU02   DISTRIBUTION ITEM UPDATE APPLICATION
DIU02   DIU - Distribution Item Update

I want for unique DIU02 , all data come in single column using comma seperation.

Its for SQL Server Database

Below is the Query

DECLARE @Data VARCHAR(MAX)

SELECT @Data = COALESCE(@Data + ',', '') + column2
FROM Table
WHERE column1= 'DIU02'

I want to get only distinct data and I used distinct keyword but I am getting only one.

Please help !

user272735
  • 10,473
  • 9
  • 65
  • 96
s_k_t
  • 689
  • 1
  • 15
  • 36

3 Answers3

2
SELECT @Data = COALESCE(@Data + ',', '') + column2
FROM (
  SELECT DISTINCT column2
  FROM Table
  WHERE column1= 'DIU02'
) t
Anon
  • 10,660
  • 1
  • 29
  • 31
0

I bet you're looking for that one (MS SQL):

DECLARE @List VARCHAR(8000)

SELECT @List = COALESCE(@List + ',', '') + CAST(column2 AS VARCHAR)
FROM   yourtable
WHERE  column1 = 'DIU02'

SELECT @List 

SQL Fiddle

Fabian Bigler
  • 10,403
  • 6
  • 47
  • 70
0

Maybe this, if I understand you

select  col1,Stuff=Stuff((SELECT ',' + col2  FROM t t1 WHERE t1.col1=t.col1   

 FOR XML PATH (''))
             , 1, 1, '' )
from t
GROUP BY col1

Fiddle

Mihai
  • 26,325
  • 7
  • 66
  • 81