티스토리 뷰
!=, <>, IS NOT 차이
의미상으로는 같지 않다를 나타내어 모두 동일한 결과를 반환할 것이라고 생각할 수 있다.
하지만,,
!=, <>, IS NOT에는 타입 비교 대상의 범위 차이가 있다.
!= 와 <> 연산자는 동일한 기능을 하며 원시 타입(Primitive Type)에 대해서만 동작하고,
IS NOT NULL은 모든 타입에 대해 동작한다.
!=, <>, IS NOT NULL 예시
!= NULL을 사용한 경우
SELECT delv_msg FROM table WHERE delv_msg != NULL;
!= NULL을 사용한 경우에는 출력한 레코드가 없는 것을 확인할 수 있다. <>와는 동일한 기능을 하기 때문에 <>는 넘어가겠다.
IS NOT NULL을 사용한 경우
SELECT delv_msg FROM table WHERE delv_msg IS NOT NULL;
IS NOT NULL을 사용한 경우에는 delv_msg 컬럼이 NULL인 아닌 레코드들을 반환한 것을 확인할 수 있다.
결론은 NULL이 아닌지를 비교하려면 무조건 IS NOT NULL 조건식을 사용해야 한다!
그리고 NULL이 아닌 값(varchar, int 등)을 비교하려면 !=, <>를 사용하자.
'DB > DB 문법' 카테고리의 다른 글
뷰(View) (0) | 2023.05.23 |
---|---|
TCL(Transaction Control Language) (0) | 2023.05.19 |
쿼리 실행 순서 (1) | 2023.05.18 |
조건식(Conditional Expressons) (0) | 2023.05.18 |
쿼리 조회 시 *(asterisk)는 정말 지양해야 할까? (0) | 2023.05.18 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- jvm 메모리 구조
- TDD
- Synchronized
- spring webflux
- redis session
- sql
- 네티 스레딩 모델
- 람다
- postgresql
- Kafka
- nginx configuration
- 분산 락
- 카프카
- 비관적 락
- annotation
- NeXTSTEP
- nginx
- 넥스트스탭
- Java
- mdcfilter
- 스프링 네티
- mysql
- spring session
- socket
- transaction
- 구름톤 챌린지
- 구름톤챌린지
- 자바 네티
- pessimistic lock
- 트랜잭션
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함