MySQL - CONCAT

김소희·2024년 8월 13일

MySQL

목록 보기
6/17

CONCAT

CONCAT 함수는 둘 이상의 문자열을 입력한 순서대로 합쳐서 반환해주는 함수입니다.

CONCAT( ) - 기본 문법

기본 문법

SELECT CONCAT(문자A, 문자B, 문자C ....) FROM 테이블

기본사용

SELECT CONCAT('안녕하세요.', '감사해요.', '잘있어요.', '다시만나요.') AS hello;

결과

CONCAT( ) - 예제

SELECT CONCAT('Moonstar', ' ', 'Tistory') FROM DUAL;

-- 결과
-- Moonstar Tistory

SELECT CONCAT('Moonstar', NULL, 'Tistory') FROM DUAL;

-- 결과
-- NULL

CONCAT()은 순서대로 합쳐주긴 하지만 문자열 사이에 NULL이 포함되어 있다면 NULL을 반환합니다.


컬럼 데이터 합치기

예제 테이블 : hero_collection

SELECT CONCAT(type, '::', name) as hero_name FROM hero_collection;


CONCAT_WS() - 기본 문법

  • CONCAT_WS()는 둘 이상의 문자열이나 컬럼 값을 반복되는 구분자를 넣고 순서대로 합쳐서 반환해 주는 함수
  • CONCAT()와는 다르게 null을 포함하여도 null로 반환하지 않는다

기본 문법

SELECT CONCAT_WS(구분자, 문자B, 문자C ....) FROM 테이블

CONCAT_WS() - 예제

SELECT CONCAT_WS(',', 'test', 'test2') FROM DUAL;

-- 결과
-- test, test2

SELECT CONCAT_WS('~', 'test', 'test2') FROM DUAL;

-- 결과
-- test~ test2

SELECT CONCAT_WS('!', 'test', 'test2') FROM DUAL;

-- 결과
-- test! test2

반면에 CONCAT_WS( )는 합쳐질 문장에 NULL이 들어가도 NULL을 반환하지 않습니다. 

0개의 댓글