본문 바로가기
Programming/SQL

[SQL] 구분자 추가하기 (QUOTENAME)

by 코딩하는 금융인 2023. 10. 22.

안녕하세요.

SQL에서 문자열에 구분자를 추가하는 방법에 대해 알아보겠습니다.

 

 SQL 구분자 추가하기 (QUOTENAME 등)

▣ SQL 구분 추가 사례

- MSSQL에서는 문자열에 구분자를 추가해주는 함수 QUOTENAME 존재함. (앞뒤로 구분자 추가)

= QUOTENAME('문자열', 구분자)

Example)
QUOTENAME('1A3B') => [1A3B]
QUOTENAME('1A3B', '-') => -1A3B-

 

- QUOTENAME 함수가 존재하지 않는 MYSQL에서는 함수를 생성해서 사용하면 됨.

DROP FUNCTION IF EXISTS QUOTENAME;

CREATE FUNCTION QUOTENAME(a varchar(50), b CHAR(1))
RETURNS VARCHAR(52)
RETURN CONCAT(b, REPLACE(a, b, CONCAT(b,b)), b);

 

: 구분자를 추가하여 컬럼 합쳐서 출력하기

DECLARE @out AS NVARCHAR(MAX)

--(MSSQL) 컬럼 내 값 합치기
SELECT @out = STUFF((SELECT ',' + QUOTENAME(a)
FROM table
FOR XML PATH(''),TYPE
).value('.','NVARCHAR(MAX)') 
,1,1,'')

 

반응형

댓글