쿼리로 null 체크 필수인 경우
쿼리로 직접 + / - 와 같은 계산을 할 경우 null 값을 모두 0으로 바꿔주어야 제대로 계산이 된다.
(sum과 같은 쿼리 함수 예외)
1 + null = null 과 같이 계산이 되기 때문에 null을 0으로 변환한 값으로 계산을 해주는 것이 더 정확할 것이다.
쿼리로 null 체크하는 방법 3가지 (oracle, mysql/mssql, 공통)
1. ORACLE
NVL(A, B)
A가 널인가? false : A 출력, true : B 출력
샘플) SELECT NVL(EMP_NM, '') AS EMP_NM
FROM EMP_TABLE
** 주의 : ORACLE에서만 사용 가능하다
2. MYSQL/MSSQL
IFNULL(A, B)
A가 널인가? false : A 출력, true : B 출력
샘플) SELECT IFNULL(EMP_NM, '') AS EMP_NM
FROM EMP_TABLE
** 주의 : MYSQL/MSSQL에서 사용 가능하다
3. 공통
COALESCE(A, B, C, D, 0)
A부터 NULL을 체크하며 널 값이 아는 값을 출력해준다
전부 널일 경우 마지막 값을 출력해준다.
샘플) SELECT COALESCE(EMP_NM, USER_NM, '미정') AS EMP_NM
FROM EMP_TABLE
** ORACLE, MYSQL, MSSQL 모두 사용할 수 있는 기능이다.
(DB가 바뀔 경우 쿼리문 수정이 수월해질 것)
'Programing > DB' 카테고리의 다른 글
Mybatis 문법 (0) | 2022.12.05 |
---|---|
SQL 문법을 알아보자 (0) | 2022.12.02 |
DBeaver auto-commit 설정 해제하기 (0) | 2022.12.02 |
다중 테이블에서 데이터를 한번 출력하는 방법 (0) | 2022.11.30 |
DBeaver 쿼리 history 보는 방법 (0) | 2022.11.14 |