오라클을 제외한 다른 대부분의 DB에서는 공백과 null을 다르게 인식함
값이 공백인 부분과 값이 없음은 엄연히 다름
DB에서 Null에 대한 처리는 주의하셔야 합니다.
Postgresql DB 테스트
1. 테이블생성
-- Drop table
-- DROP TABLE rdm.tb_nulltest;
CREATE TABLE rdm.tb_nulltest (
column1 varchar(100) NULL,
column2 varchar(100) NULL
);
2. 데이터등록
INSERT into rdm.tb_nulltest(column1, column2) VALUES('0001_공백값1', '');
INSERT into rdm.tb_nulltest(column1, column2) VALUES('0002_공백값2', '');
INSERT into rdm.tb_nulltest(column1, column2) VALUES('0003_Null1', null);
INSERT into rdm.tb_nulltest(column1, column2) VALUES('0004_Null1', null);
3. 공백 vs Null비교
-- 공백
SELECT column1, column2
FROM rdm.tb_nulltest
where column2 = '';
-- Null
SELECT column1, column2
FROM rdm.tb_nulltest
where column2 is null;
4. 결과 (1)
5. length 비교
select column1, length(column2)
from rdm.tb_nulltest;
공백과 Null의 차이가 분명히 보이시죠?
통계등을 계산하실때 특히 주의해서 사용하세요~!
반응형
'DB > Beginner' 카테고리의 다른 글
DB 접속유지 검사용 validationQuery를 아시나요? (0) | 2020.07.10 |
---|
최근댓글