SQL/MySQL

MySQL NULL 값 치환(대체), COALESCE 함수 예시

진리뷰 2023. 9. 1. 09:00
반응형

 

 

MySQL-NULL-값-치환(대체)-COALESCE-함수-예시-썸네일
COALSECE 함수, NULL 값 치환하기

 

 

이 글은 MySQL에서 NULL 값 치환(대체) 방법 중 하나인 COALESCE 함수 설명과 예시를 담고 있습니다.

 

 

MySQL NULL 값

 

NULL 값은 결측치(Missing value)로 '알 수 없다'라는 의미이며, 숫자 0과 다릅니다.

그리고 데이터 추출 및 계산 시 NULL값이 있으면, 결과도 NULL입니다.

 

 

MySQL NULL 값 치환(대체); COALESCE 함수

 

예를 들어, 숫자 0이라는 의미로 공백 처리했을 수도 있지만 결괏값은 NULL이므로 부정확한 결과가 발생합니다.

이런 상황에서는 NULL 값을 0으로 치환(대체)할 필요가 있습니다.

 

NULL값을 치환하는 몇 가지 방법 중 하나로 COALESCE함수가 있습니다.

COALESCE함수는 NULL 이 아닌, 첫 번째 값을 반환합니다.

만약 NULL값만 있다면 NULL을 반환합니다.

1
2
3
4
5
6
7
8
9
10
11
SELECT COALESCE(NULL'YESTERDAY''TODAY');
-> 'YESTERDAY'
 
SELECT COALESCE(NULLNULL'TODAY');
-> 'TODAY'
 
SELECT COALESCE('YESTERDAY'NULL'TODAY');
-> 'YESTERDAY'
 
SELECT COALESCE(NULLNULL);
-> NULL
 
 

 

 

COALESCE 함수 사용 방법

COALESCE-함수-사용-방법
COALESCE

 

 

COALESCE 함수 예시

 

SELECT COALESCE(null, 2, 3); 을 입력했더니, null 값이 아닌 2, 3 중 첫 번째 값인 2를 반환했습니다.

COALESCE-MySQL-예시
COALESCE

 

SELECT *, COALESCE(city, 0) FROM clerk;

>> clerk 테이블에서 모든 열을 보여주고 city열에서 NULL값은 0으로 치환해 줘.

city열에서 NULL 값이 아닌 '서울'은 그대로 반환되었습니다.

반면, city열의 NULL값은 모두 0으로 치환되었습니다.

MySQL-COALESCE-0-치환-예시
NULL을 0으로 치환

 

반응형
top