문자열 여러 개 합치기 - CONCAT( ), CONCAT_WS( )
데이터 조회 시 여러 컬럼에서 조회되는 데이터를 하나의 문자열로 출력해야 하는 경우가 있습니다. 이러한 상황에서 CONCAT(), CONCAT_WS()함수를 사용하여 간단하게 문자열을 합칠 수 있습니다. 기본 사용법은 다음과 같습니다.
CONCAT( ) - 기본 문법
-- 기본 문법
SELECT CONCAT(문자A, 문자B, 문자C ....) FROM 테이블
CONCAT( ) - 예제
SELECT CONCAT('Moonstar', ' ', 'Tistory') FROM DUAL;
-- 결과
-- Moonstar Tistory
SELECT CONCAT('Moonstar', NULL, 'Tistory') FROM DUAL;
-- 결과
-- NULL
CONCAT()은 순서대로 합쳐주긴 하지만 문자열 사이에 NULL이 포함되어 있다면 NULL을 반환합니다.
CONCAT_WS( ) - 기본 문법
-- 기본 문법
SELECT CONCAT_WS(구분자, 문자B, 문자C ....) FROM 테이블
CONCAT( )_WS - 예제
SELECT CONCAT_WS(',', 'Moonstar', 'Tistory') FROM DUAL;
-- 결과
-- Moonstar, Tistory
SELECT CONCAT_WS('~', 'Moonstar', 'Tistory') FROM DUAL;
-- 결과
-- Moonstar~ Tistory
SELECT CONCAT_WS('!', 'Moonstar!', 'Tistory') FROM DUAL;
-- 결과
-- Moonstar! Tistory
반면에 CONCAT_WS( )는 합쳐질 문장에 NULL이 들어가도 NULL을 반환하지 않습니다.
'RDBS > MYSQL' 카테고리의 다른 글
[MySQL]CASE문의 기본 사용법 및 사용 시 주의 사항 (6) | 2023.02.06 |
---|---|
[MySQL]그룹화 하고 조건 부여하기(Group By절, Having절) (1) | 2023.02.03 |
[MYSQL]ORDER BY절의 다중 정렬 (8) | 2023.01.16 |
[MYSQL]REGEXP(정규 표현식) : 특정 문자열 처리 (7) | 2023.01.13 |
[MYSQL]함수를 활용한 날짜 및 시간 연산 (9) | 2023.01.10 |