본문 바로가기

데이터베이스/SQL & PL/SQL

[SQL] WHERE 절을 활용하자, NULL!


NULL 은 의미하는 바 대로 존재하지 않는다 입니다.
오라클에서는 NULL을 값이 아닌 상태로 표시하기 때문에
우리가 알고 있는 연산자를 쓸 수 없습니다.

department_id=null

과 같이 말이죠. 못 쓰는 것은 아니지만 우리가 의도한 값이 나오지 않게 됩니다.

이때 쓸수 있는 것이 IS NULL 인데요.
다른 SQL에서는 위와 같이 사용 가능합니다.

즉 오라클에서는 부서아이디가 NULL인 사원을 조회하고 싶을때
WHERE department_id IS NULL;
로 하게 되면 우리가 의도 한 것을 얻을 수 있습니다.


해봅시다.
SELECT department_id, first_name, salary
FROM hr.employees
WHERE department_id IS NULL;
 
이렇게 쓰면 부서아이디가 없는 사원들을 조회 할 수 있겠죠?

반대로 부서아이디가 NULL 이지 않는 사원들을 조회하고 싶으면
NULL 앞에 NOT을 붙여서 IS NOT NULL 을 해주면 되겠습니다.


도움 되셨다면 댓글 부탁드립니다.