SQL programming 
Row 데이타를 콤마로 붙여 CSV 문자열로 만들기

테이블의 한 컬럼에 있는 ROW 데이타들을 콤마로 분리하여 CSV 문자열을 만드는 한 방법은 아래 예제와 같이 SELECT 문을 사용할 수 있다. 아래 예제를 보면, @CSV 라는 변수에 컬럼 데이타를 계속 누적해서 더하면서 중간에 콤마를 붙여 결합하고 있다. 여기서 CASE 문은 처음 @CSV 사용시 NULL 이므로 빈 문자열과 첫 ROW의 데이타를 결합하게 되고, 두번째 ROW 부터는 @CSV 변수가 이미 NULL이 아니므로 지금까지의 @CSV 변수값과 콤마 그리고 새 ROW 데이타를 결합하게 된다. 아래 그림은 테스트 코드를 실행한 결과이다.

예제








복수 컬럼들의 Row를 CSV 문자열로 만들기

테이블에 여러 컬럼들이 있을 때, ROW 데이타들을 콤마로 분리하여 CSV 문자열을 만들기 위해 아래와 같은 방식을 사용할 수 있다. 테이블(Table1)의 모든 컬럼명을 sys.columns 테이블에서 가져와서 콤마로 연결하여 하나의 컬럼으로 만들고 이를 Dynamic SQL문으로 만들어 EXEC 혹은 sp_executesql 로 실행한 것이다. 아래 예제는 모든 컬럼 타입을 고려한 것이 아니므로, 경우에 따라 코드를 수정해야 할 수 있다.

예제





본 웹사이트는 광고를 포함하고 있습니다. 광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.