views:

32

answers:

1

Based on the following table

ID  Description  ReleateID 
-----------------------------------
1   some desc1.   50
1   some desc1.   60
2   some desc2.   50
2   some desc2.   70
3   some desc3.   80

How to get the following output

ID  Description   AllRelatedIDs
----------------------------------
1   some desc1.   50,60
2   some desc2.   50,70
3   some desc3.   80

Thanks.

+2  A: 

Use the FOR XML trick:

SELECT t.id, 
       t.description
       STUFF(ISNULL(SELECT ', ' + x.releateid
                      FROM TABLE x
                     WHERE x.id = t.id
                       AND x.description = t.description
                   FOR XML PATH ('')), ''), 1, 2, '')
  FROM TABLE t
OMG Ponies