데이터분석 study/SQL
TIL_24.09.10_COALESCE함수
justdata
2024. 9. 10. 10:56
SQL 코딩테스트 문제를 풀다가
다른 분들 풀이를 보고 몰랐던 함수에 대해서
찾아보았다.
▶ COALESCE함수로 NULL 값 처리하기
SELECT COALESCE(컬럼1, 컬럼2, 컬럼3, ... , 컬럼 N, ...) FROM table;
만약, 컬럼1이 null이 아니면 컬럼1을 반환되고, null이면 컬럼2를 반환
컬럼2가 null이 아니면 컬럼2를 반환하고, 컬럼1과 컬럼2 모두 null이면 컬럼3을 반환
컬럼1 ~ 컬럼5까지 null 이면 컬럼 6을 반환하는 형식
예시)
SELECT COALESCE(컬럼1, 컬럼2, '공백') FROM member;
결과값: 컬럼1의 null값 대신 컬럼2가 반환되고, 컬럼2의 null값 대신
'공백'으로 반환
▶ IFNULL과 COALESCE의 차이
- IFNULL은 값을 두 가지만 넣을 수 있지만, COALESCE는 여러 개의
값을 넣을 수 있다.
- IFNULL은 Mysql에만 제공되는 함수이지만, COALESCE 함수는 표준 SQL 함수
<블로그 참고 >
[MySQL] COALESCE 함수로 NULL 값 처리하기 (feat. IFNULL 차이점)
기본 사용법 SELECT COALESCE(칼럼1, 칼럼2, 칼럼3, ... , 칼럼 N, ...) FROM table; 칼럼1이 NULL이 아니면 칼럼1을 반환되고 NULL이면 칼럼2를 반환. 칼럼2가 NULL이 아니면 칼럼2를 반환하고 칼럼1과 칼럼2 모두 N
wnwa.tistory.com