[MSSQL] 컬럼문자 합치기 (,) - STUFF..FOR XML PATH
Posted on 2018. 7. 10. 21:23
Filed Under DB
STUFF(): 문자열의 위치와 길이를 지정하여 다른 문자로 치환
STUFF (문자열, 위치, 길이, 치환할 문자)
FOR XML PATH: 쿼리의 결과 데이터를 XML 형태로 표현
FOR XML PATH ([row element명])
SELECT type
, STUFF((SELECT ',' + name
FROM t
WHERE type = a.type
ORDER BY code
FOR XML PATH('')
), 1, 1, '') name_MSSQL
FROM t a
GROUP BY type
ORDER BY type
출처: http://hspmuse.tistory.com/entry/group-by에서-문자열-합치기 [개발자인생]
--컬럼명 나열 만들기(INSERT문 작성시 유용) SELECT STUFF((SELECT ',' + COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'USERS' ORDER BY COLUMN_NAME FOR XML PATH('') ), 1, 1, '') AS COLS
참고: https://blog.sonim1.com/107
반응형