string_agg 세로 문자열 값을 연결하고 그 사이에 구분 기호 값을 배치합니다. 구분 기호는 문자열 끝에 추가되지 않습니다.
* Microsoft SQL Server 2019 [AdventureWorks2019], Microsoft SQL Server 2014 [AdventureWorks2014]
STRING_AGG ( expression, separator ) [ <order_clause> ]
<order_clause> ::=
WITHIN GROUP ( ORDER BY <order_by_expression_list> [ ASC | DESC ] )
A. ',' 로 구분된 이름 목록 생성
SELECT STRING_AGG (FirstName, ', ') AS names FROM Person.Person WHERE BusinessEntityID < 100;
B. NULL 값 없이 쉼표로 구분된 이름 목록 생성
SELECT STRING_AGG(ISNULL(FirstName,'N/A'), ',') AS names FROM Person.Person WHERE BusinessEntityID < 100;
C. 여러 컬럼값을 연결하고 쉼표로 구분된 이름 목록 생성
SELECT STRING_AGG(CONCAT(FirstName, ' ', LastName, '(', ModifiedDate, ')'), ' ,') AS names FROM Person.Person WHERE BusinessEntityID < 100;
D. SQL Server 2017 미만 버전에서의 사용
SELECT STUFF((SELECT CONCAT(',', FirstName) FROM [Person].[Person] FOR XML PATH('')), 1, 1, '')
[MSSQL] SELECT INTO (0) | 2022.10.11 |
---|---|
[MSSQL] 로그인 인증모드 변경하기 (0) | 2022.10.09 |
[MSSQL] SQL Server 예제 데이터베이스 (0) | 2022.08.30 |
[MSSQL] 테이블 Column 명 조회 (0) | 2022.08.29 |
[MSSQL] sp_addextendedproperty, 확장 속성 추가 (0) | 2022.05.18 |
댓글 영역