학습 자료

NULL과 NOT NULL

SQL에서 NULL 값은 누락되었거나 알 수 없는 데이터를 의미합니다. 이는 숫자 0(0)이나 빈 문자열('')과 동일하지 않습니다. 말 그대로 "값이 없음"을 뜻합니다.


NULL 값

데이터가 완전하지 않을 때 어떤 컬럼에는 NULL이 들어갈 수 있습니다. 예를 들어, 고객이 아직 이메일을 제공하지 않은 경우가 있습니다.


IS NULL로 NULL 확인하기

IS NULL 또는 IS NOT NULL을 사용해 NULL 값을 확인할 수 있습니다.

IS NULL 연산자는 값이 NULL이면 TRUE를 반환합니다.

이메일이 없는 고객 찾기
SELECT name FROM clients WHERE email IS NULL;

위 예시는 이메일을 제공하지 않은 고객을 찾는 방법을 보여줍니다.


NULL이 아닌 값에 대해 IS NOT NULL

IS NOT NULL 연산자는 값이 NULL이 아니면 TRUE를 반환합니다.

이메일이 있는 고객 찾기
SELECT name FROM clients WHERE email IS NOT NULL;

위 예시는 이메일을 제공한 고객을 찾는 방법을 보여줍니다.

NULL과의 비교에는 = 연산자를 사용할 수 없습니다. 반드시 IS NULL 또는 IS NOT NULL을 사용하세요.


NOT NULL 제약

NOT NULL 제약은 컬럼에 누락된 값이 들어가는 것을 방지합니다.

예를 들어, 아래 쿼리는 idname 컬럼에 NOT NULL 제약을 둔 테이블을 생성합니다.

NOT NULL 제약으로 테이블 생성
CREATE TABLE clients ( id INT NOT NULL, name TEXT NOT NULL, email TEXT, signup_date TEXT );

이렇게 하면 idname은 항상 제공되어야 합니다.

NULL을 올바르게 다루면 데이터 무결성을 유지하고, 필터링과 리포팅의 정확도를 높이며, 쿼리에서의 예기치 않은 결과를 줄일 수 있습니다.

Quiz
0 / 2
1.

SQL에서 NULL 값은 무엇을 의미하나요?

0 값

빈 문자열

누락되었거나 알 수 없는 데이터

중복된 레코드

형식 오류

2.

컬럼 값이 NULL인지 어떻게 확인하나요?

컬럼 = NULL

컬럼 != NULL

컬럼 IS NULL

컬럼 EQUALS NULL

NULL(컬럼)

학습 자료

AI 튜터

디자인

업로드

수업 노트

즐겨찾기

도움말

코드 에디터

코드 실행
코드 생성

DB 테이블 구조

실행 결과