Challenge & Study 데이터 분석

Postgre SQL - IS NULL 연산자 본문

데이터 분석 - Postgre SQL/정리하자

Postgre SQL - IS NULL 연산자

Factful_Day 2020. 7. 10. 17:02

# 구동 환경 : Postgre SQL 12.3 설치 -> pgAdmin4에서 아래 DB 연동 -> DBeaver 7.1.2 버전에서 코딩 진행

# 활용하는 DB = dvdrental.tar

(Link : http://www.postgresqltutorial.com/wp-content/uploads/2017/10/dvdrental.zip)

IS NULL 연산자는 특정 컬럼 혹은 값이 NULL 값인지 아닌지를 판단하는 연산자입니다. IS NULL 혹은 IS NOT NULL로 NULL 유무를 판단합니다.

예제를 생성하고 내용을 진행해보겠습니다.

CREATE TABLE CONTACTS -- CONTACTS라는 테이블을 생성
(
 ID INT GENERATED BY DEFAULT AS IDENTITY 
,FIRST_NAME VARCHAR(50) NOT NULL 
,LAST_NAME VARCHAR(50) NOT NULL 
,EMAIL VARCHAR(255) NOT NULL 
,PHONE VARCHAR(15)
,PRIMARY KEY (ID)
);
INSERT -- 예제를 위한 값들을 생성하고 기입
 INTO
 CONTACTS(FIRST_NAME, LAST_NAME, EMAIL, PHONE)
 VALUES
 ('John', 'Doe', 'john.doe@example.com', NULL),
 ('Lily', 'Bush', 'lily.bush@example.com', '(408-234-2764)');
SELECT *
  FROM CONTACTS; -- CONTACTS테이블의 모든 값을 출력

예재가 잘 생성되었습니다.

 SELECT
        ID
       ,FIRST_NAME
       ,LAST_NAME
       ,EMAIL
       ,PHONE
   FROM 
        CONTACTS
  WHERE PHONE IS NULL; -- PHONE컬럼의 값이 NULL인 집합을 출력
  -- WHERE PHONE = NULL
  -- 은 결과 집합이 공집합입니다. NULL은 '='연산으로 비교할 수 없습니다.

PHONE이 NULL값인 유저가 잘 출력되었습니다.

 SELECT
        ID
       ,FIRST_NAME
       ,LAST_NAME
       ,EMAIL
       ,PHONE
   FROM 
        CONTACTS
  WHERE PHONE IS NOT NULL; -- PHONE컬럼의 값이 NULL이 아닌 집합을 출력

PHONE이 NULL값이 아닌 유저가 잘 출력되었습니다.

다음에는 배운것들을 가지고 연습문제를 풀어보도록 하겠습니다.

'데이터 분석 - Postgre SQL > 정리하자' 카테고리의 다른 글

Postgre SQL - LIKE 연산자  (0) 2020.07.10
Postgre SQL - BETWEEN 연산자  (0) 2020.07.10
Postgre SQL - IN 연산자  (0) 2020.07.09
Postgre SQL - Fetch 절  (0) 2020.07.06
Postgre SQL - Limit 절  (0) 2020.07.06