이 블로그 검색

2011년 7월 3일 일요일

STUFF & FOR XML

DECLARE @SAMPLE TABLE (ID INT, CODE VARCHAR(3))
INSERT @SAMPLE
SELECT 290780, 'LT' UNION ALL
SELECT 290780, 'AY' UNION ALL
SELECT 290781, 'ILS' UNION ALL
SELECT 290780, 'AY'





SELECT
 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 CODES
FROM @SAMPLE AS S1
ORDER BY S1.ID







SELECT
 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 CODES
FROM @SAMPLE AS S1
ORDER BY S1.ID






SELECT
 DISTINCT S1.ID
, STUFF((SELECT ',' + S2.CODE FROM @SAMPLE AS S2 WHERE S2.ID = S1.ID FOR XML PATH('')), 1, 1, '') AS CODES
FROM @SAMPLE AS S1

ORDER BY S1.ID

댓글 없음:

댓글 쓰기