Author |
Topic |
novedturn
Starting Member
1 Post |
Posted - 2011-01-28 : 16:35:31
|
Here is a sample of my table:ID Name Codes1 John D S12, S13, S891 John D S98, T122 Joe D X27, S283 Bob S F12, F13, X433 Bob S S44, X38, S904 Steve F D25I want a query that will return the followingID Name Codes1 John D S12, S13, S89, S98, T12 2 Joe D X27, S283 Bob S F12, F13, X43, S44, X38, S904 Steve F D25Any ideas? |
|
djorre
Yak Posting Veteran
94 Posts |
Posted - 2011-01-29 : 04:05:58
|
Execute this and see what you can use, code by Peso:-- Prepare sample dataDECLARE @Sample TABLE (ID INT, Code VARCHAR(3))INSERT @SampleSELECT 290780, 'LT' UNION ALLSELECT 290780, 'AY' UNION ALLSELECT 290781, 'ILS' UNION ALLSELECT 290780, 'AY'-- Show the expected outputSELECT DISTINCT s1.ID, STUFF((SELECT DISTINCT TOP 100 PERCENT ',' + s2.CODE FROM @Sample AS s2 WHERE s2.ID = s1.ID ORDER BY ',' + s2.CODE FOR XML PATH('')), 1, 1, '') AS CODESFROM @Sample AS s1ORDER BY s1.IDSELECT DISTINCT s1.ID, STUFF((SELECT TOP 100 PERCENT ',' + s2.CODE FROM @Sample AS s2 WHERE s2.ID = s1.ID ORDER BY ',' + s2.CODE FOR XML PATH('')), 1, 1, '') AS CODESFROM @Sample AS s1ORDER BY s1.IDSELECT DISTINCT s1.ID, STUFF((SELECT ',' + s2.CODE FROM @Sample AS s2 WHERE s2.ID = s1.ID FOR XML PATH('')), 1, 1, '') AS CODESFROM @Sample AS s1ORDER BY s1.ID |
 |
|
|
|
|