SQL에서 null 비교 연산
select id from employee where birth_date is null;
- null 비교 연산시에는 =, != 연산자가 아닌 is, is not 연산자를 사용해야 합니다.
Three-valued Logic
- three-valued login이란 비교/논리 연산의 결과로 true, false, unknown을 가진다는 의미입니다.
- SQL에서 null과 비교 연산을 하게 되면 그 결과는 unknown입니다.
- unknown은 true일 수도 있고 false일 수도 있다 라는 의미입니다.
- 위와 같은 unknown의 결과가 중요한 이유는 where절의 condition의 결과가 true일 경우에만 튜플이 선택되는데 즉, false나 unknown일 경우 선택되지 않습니다.
not in 주의사항
- 위와같이 null에 의한 unknown으로 인해서 예상치 못한 결과가 return 될 수 있습니다. 즉, not in 안에서 사용될 결과에서 null이 포함될 경우 false 또는 unknown만 return 할 수 있습니다.
'데이터 베이스 > RDBMS' 카테고리의 다른 글
SQL의 order by, aggregate function, group by, having 사용법 ( select 최종 문법 정리 ) (0) | 2023.02.03 |
---|---|
SQL join의 의미와 사용법 ( with MySQL ) (1) | 2023.02.01 |
subquery를 이용한 select 사용법 (1) | 2023.02.01 |
select 사용법 ( with as, distinct, like ) (0) | 2023.02.01 |
INSERT, UPDATE, DELETE 쿼리문 사용하기(with MySQL) (0) | 2022.12.25 |