앞으로 공부할 NULL의 속성과 특징을 계속해서 업데이트 할 글이다.
먼저 NULL의 속성부터 정리하면
- NULL은 아직 정의되지 않은 값으로 0 또는 공백과 다르다. 0은 숫자이고, 공백은 하나의 문자이다.
- 테이블을 생성할 때 NOT NULL 또는 PK로 정의되지 않은 모든 데이터 유형은 NULL 값을 포함할 수 있다.
- NULL값을 포함하는 연산의 경우 결과 값도 NULL 값이다. 모르는 데이터에 숫자를 더하거나 빼도 결과는 마찬가지로 모르는 데이터인 것과 같다.
- 결과값을 NULL이 아닌 다른 값을 얻고자 할때 NVL/ISNULL 함수를 사용한다. NULL값의 대상이 숫자 유형 데이터인 경우는 주로 0을 사용하고, 문자 유형 데이터인 경우는 블랭크보다는 'X' 같이 해당 시스템에서 의미 없는 문자로 바꾸는 경우가 많다.
- 일반적인 집계함수 연산시 NULL값은 제외하고 출력한다.
단일행 NULL 관련 함수의 종류
일반형 함수 | 함수 설명 |
NVL(표현식1, 표현식2) / ISNULL(표현식1, 표현식2) | 표현식 1의 결과값이 NULL이면 표현식2의 값을 출력한다. 단, 표현식1과 표현식2의 결과 데이터 타입이 같아야 한다. NULL 관련 가장 많이 사용되는 함수이므로 상당히 중요함 |
NULLIF(표현식1, 표현식2) | 표현식1이 표현식2와 같으면 NULL을, 같지 않으면 표현식1을 리턴한다. |
COALESCE(표현식1, 표현식2, ---) | 임의의 개수 표현식에서 NULL이 아닌 최초의 표현식을 ㅌ나타낸다. 모든 표현식이 NULL이면 NULL을 리턴한다. |
ORACCLE함수/SQL SERVER함수 |
'프로젝트(종료) > SQLD 자격증 따기' 카테고리의 다른 글
[SQL]계층형 쿼리 및 셀프 조인 정리 (0) | 2021.03.17 |
---|---|
[SQL] 날짜형 함수 정리 (0) | 2021.03.13 |
여러가지 COUNT() 쓰임새 (0) | 2021.03.09 |
DISTINCT와 GROUP BY의 차이 (0) | 2021.03.09 |
DELETE와 TRUNCATE와 DROP 표로 이해하기 (0) | 2021.03.08 |
댓글