MS SQL Server (MSSQL)

T-SQL을 사용하여 쉼표 또는 기타 구분 기호를 SQL Server의 테이블 또는 목록으로 변환

초심으로 2021. 3. 10. 10:42

728x90

Sql 을 사용하면서 콤마로 구분된 여러 데이터를 조회하는 경우가 많이 있는데... 이때 사용하기 좋다.  내가 찾은 여러 방법 중 가장 간결한 방법이다.

 

 

DECLARE @PARAM_IDS VARCHAR(MAX) = N'111,222,333';
DECLARE @sql_xml XML = Cast('<root><U>'+ Replace(@PARAM_IDS, ',', '</U><U>')+ '</U></root>' AS XML);

SELECT f.x.value('.', 'NVARCHAR(100)') AS IDS
FROM @sql_xml.nodes('/root/U') f(x)

 

 

 

참고: www.sqlshack.com/converting-commas-or-other-delimiters-to-a-table-or-list-in-sql-server-using-t-sql/

 

Converting commas or other delimiters to a Table or List in SQL Server using T-SQL

A very common T-SQL needs of database developer is to convert a comma-separated value to list or rows, or any other delimiter into a tabular format, such as pipe “|”, hash “#”, dollar “$” and many more characters

www.sqlshack.com

 

 

반응형