MSSQL NULL 체크(조회) IS 연산자, 대체(치환) ISNULL 함수 (WHERE 절)

MSSQL NULL 체크(조회) IS 연산자, 대체(치환) ISNULL 함수 (WHERE 절)

MS SQL에서는 데이터 값이 공백이나 빈 문자도 아닌 없는 상태인 NULL이 존재합니다. NULL 데이터를 WHERE 절에서 조건으로 사용할 때는 일반적인 비교 연산자로 사용하면 안 되고 IS 연산자로 반드시 사용하셔야 됩니다. 그리고 NULL을 지정된 대체 값으로 바꿀 수 있도록 ISNULL() 함수를 제공하고 있습니다.

그럼 간단한 예제를 통해서 NULL 체크 및 ISNULL() 함수에 대해서 알아보죠.

포스트 기준

– Microsoft SQL Server 2019

– SSMS 18.10

사용 예제

1. 테스트 데이터

-- 총 10건 중 과목 2개 공백, 2개 NULL 데이터
SELECT *
  FROM BS_DEMO_7
테스트 데이터


2. IS 연산자 예제 1) IS NULL

-- = 비교 연산자로 검색이 되지 않음
SELECT *
  FROM BS_DEMO_7
 WHERE SUBJECT = NULL
     
-- IS NULL 연산자로 검색을 해야 됨
SELECT *
  FROM BS_DEMO_7
 WHERE SUBJECT IS NULL
IS 연산자 예제 1) IS NULL


3. IS 연산자 예제 2) IS NOT NULL

-- <> 비교 연산자로 검색이 되지 않음
SELECT *
  FROM BS_DEMO_7
 WHERE SUBJECT <> NULL
     
-- IS NOT NULL 연산자로 검색을 해야 됨
SELECT *
  FROM BS_DEMO_7
 WHERE SUBJECT IS NOT NULL
 IS 연산자 예제 2) IS NOT NULL


4. ISNULL() 함수 예제 3)

-- NULL인 경우 공백으로 대체(치환)
SELECT *
  FROM BS_DEMO_7
 WHERE ISNULL(SUBJECT, '') = ''
ISNULL() 함수 예제 3)


이 글이 도움이 되셨다면 공유를 부탁드립니다. 다음 글에서 뵙겠습니다!

위로 스크롤