이번시간에는 여러 컬럼 값을 조회 한 후에 하나의 문자열 또는
하나의 컬럼 값으로 반환할 때 사용하는
CONCAT 에 대해 알아보도록 하겠습니다.
Oracle(오라클)에서는 || 를 사용하여 쉽게 처리할 수 있지만
MYSQL에서는 CONCAT( ) 또는 CONCAT_WS( )를 사용해야합니다.
MYSQL의 CONCAT( ) 함수는 둘 이상의 문자열이나
둘 이상의 컬럼 값을 순서대로 합쳐 반환하는데요,
조회하거나 합쳐지는 문자열/컬럼 값에 NULL이 포함된다면
NULL이 반환되게 됩니다.
사용방법은 아주 간단한데요, 방법은 아래와 같습니다.
SELECT CONCAT(문자열 1, 문자열 2, ... ) FROM 테이블 명;
예문을 통해 사용법을 익히시기 바랍니다.
EX>
SELECT CONCAT('NAME' , 'JUNE') FORM DUAL;
SELECT CONCAT('HI', 'NICE', 'TO MEET YOU') FROM DUAL;
>> RESULT
NAME JUNE
HI NICE TO MEET YOU
* DUAL 테이블은 쿼리문의 수행 결과가 하나의 ROW로 출력되기 위한 DUMMY 컬럼만 갖고 있음, 함수를 위한 임시 테이블 같은 개념
반면 CONCAT_WS( )도 CONCAT( ) 함수와 동일한 기능을 하고 있지만
두가지의 차이점이 있습니다.
우선, 둘 이상의 문자열/컬럼 명이 있는 경우에 이 사이에 반복되는 구분자를 넣어야하고
두번째는 합쳐지는 문자열에 NULL이 포함되어 있더라도
반환 값은 NULL이 아니라는 점입니다.
사용방법은 아래와 같습니다.
SELECT CONCAT_WS(구분자, 문자열 1, 문자열2, ...) FROM 테이블 명;
EX>
SELECT CONCAT_WS(',' , 'H', 'I', 'WOW') FROM DUAL;
SELECT CONCAT_WS(',' , 'HI', 'NICE', 'TO MEET YOU') FROM DUAL;
>> RESULT
H,I,WOW
HI,NICE,TO MEET YOU
'DataBase > MYSQL' 카테고리의 다른 글
[MYSQL] 기본 문법(8) - GROUP BY 와 HAVING (0) | 2022.10.25 |
---|---|
[MYSQL] SQL 문법 - 정규식을 이용한 검색 regexp (0) | 2022.10.11 |
[MYSQL] SQL 문법 - 짝수인 조건 걸기 (0) | 2022.10.07 |
[MYSQL] 기본 문법(7) - LIMIT (0) | 2022.09.06 |
[MYSQL] 기본 문법(6) - ORDER BY (0) | 2022.07.24 |
댓글