컴퓨터공학/데이터베이스
SQL DECODE와 CASE WHEN의 차이점
Milhouse Mussolini Van Houten
2021. 10. 28. 17:38
비슷한 조건문이지만 성격이 다르다.
case when | decode |
sql statement | 함수 |
sql 과 pl/sql 모두 사용 가능 | sql에서만 |
다양한 비교연산 가능 | 등가 연산 |
null 비교 연산 불가 | null 비교 연산 가능 |
null 비교 연산 불가능하다는 뜻은???
예를 들어서 나는 어떤 테이블에서 어떤 셀이 null인지 아닌지 판단하고 싶은데
어떤 셀 값이 null 일 경우
실행하면
어떤 셀에는 null 값이 들어있어도 아예 판단을 못한다.
즉, case when 에서 null 값은 비교 연산(=, >, <) 불가능.
null 인지 아닌지 확인하고 싶으면 isnull 이나 함수를 사용하자.
추가 팁으로
위나 아래나 같은 내용이다.