728x90
반응형
NULL이란
- DBMS에서 아직 정해지지 않은 값을 의미
- 모델 설계 시 각 컬럼별로 NULL을 허용할지 말지를 결정(Nullable Column)
NULL의 연산
- NULL 값과의 연산(+, -, *, / 등)은 NULL 값을 리턴
- NULL 값과의 비교 연산(=, >, >=, <, <=)은 거짓(FALSE)을 리턴
- 특정 값보다 크다, 작다고 표현할 수 없음
NULL 특성
- NULL 값은 아직 정의되지 않은 값으로, 0 또는 공백과 다르다.
- 0은 숫자이고, 공백은 하나의 문자이다.
- 테이블을 생성할 때 NOT NULL 또는 PRIMARY KEY로 정의되지 않은 모든 데이터 유형은 NULL 값을 포함할 수 있다.
- NULL 값을 포함하는 연산의 경우 결과값도 NULL 이다.
- 모르는 데이터에 숫자를 더하거나 빼도 결과는 마찬가지로 모르는 데이터인 것과 같다.
- 집계함수(SUM, AVG, MIN, MAX 등)는 NULL을 제외한 연산 결과를 리턴한다.
- 결과값을 NULL이 아닌 다른 값을 얻고자 할 때, NVL/ISNULL 함수를 사용한다.
- NULL 값의 대상이 숫자 유형 데이터인 경우는 주로 0(Zero)으로, 문자 유형 데이터인 경우는 공백보다는 'x'와 같이 해당 시스템에서 의미 없는 문자로 바꾸는 경우가 많다.
NULL의 ERD 표기법
- IE 표기법에서는 NULL 허용 여부를 알 수 없다.
- 바커 표기법에서는 속성 앞에 동그라미가 NULL 허용 속성을 의미한다.
반응형
'[DB]DataBase > [SQL]' 카테고리의 다른 글
[SQLD] 관계형 데이터베이스 개요 (0) | 2024.03.10 |
---|---|
[SQLD] 본질 식별자 vs. 인조식별자 (0) | 2024.03.06 |
[SQLD] 트랜잭션 (0) | 2024.03.03 |
[SQLD] 관계와 조인 (0) | 2024.03.02 |
[SQLD] 정규화(Normalization) (0) | 2024.03.01 |