NULL 대응
NULL값에 대한 대응
COALESCE
를 사용하여 NULL값 대응 가능
- 인수1이 NULL이면 인수2 반환, 인수2가 NULL인 경우 인수3을 반환을 계속 반복
COALESCE(인수1, 인수2, 인수3, ... 인수N)
COALESCE(컬럼명, 0)
COALESCE 사용
- 평균 계산을 NULL을 0으로 변환뒤 계산하면 값이 달라짐
SELECT
AVG(COALESCE(star, 0))
FROM
inquiry;
IFNULL 함수
IFNULL
함수는 인수가 두개 밖에 없는 COALESCE
와 동일
IFNULL(인수1, 인수2)
- NULL 값 뒤로 보내기
- NULL값인 데이터에 임의의 큰 값을 넣어서 뒤로 보내는 방법
SELECT
*
FROM
product
ORDER BY
IFNULL(price, 999999) asc;
NULLIF함수
- 다른 값을 NULL로 바꿔 놓는 함수
- 두개의 인수를 갖고 두 인수가 같으면 NULL 반환, 다르면 인수1을 반환
NULLIF(인수1, 인수2)
SELECT
1 / NULLIF(컬럼명, 0)
FROM
테이블;