728x90
ISNULL과 NULLIF
💡 ISNULL - NULL을 지정된 대체 값으로 바꿈.
- ISNULL(A, B) : A가 NULL일경우 B를 출력
SELECT ISNULL(NULL, 5) AS A_NULL, ISNULL(4, 5) AS A_NOT_NULL;
https://learn.microsoft.com/ko-kr/sql/t-sql/functions/isnull-transact-sql?view=sql-server-ver16
💡 NULLIF - 지정된 두 식이 같으면 NULL값을 반환.
- NULLIF(A, B) : A, B가 같으면 NULL값을, 같지 않으면 A를 반환
SELECT NULLIF(5,5) AS SAME, NULLIF(5,7) AS DIFFERENT
ISNULL과 NULLIF 사용예시
UPDATE SET DEL_YN = ISNULL(NULLIF(#{delYn}, ''), 'N')
우리 회사의 경우 파라메터 delYn의 값이 입력되지 않았을 때 NULL값이 아닌 ''로 들어오기 때문에 NULLIF()를 통해 NULL값으로 반환하고, ISNULL()을 통해 'N'으로 업데이트 해준다.
728x90
'SQL > MSSQL' 카테고리의 다른 글
[MSSQL]datetime타입의 컬럼에 Null값을 Insert할 때 1999-01-01이 들어가는 현상과 해결법 (2) | 2024.01.10 |
---|---|
[MSSQL] IN절을 사용해 데이터 출력하기 - 잘못된 사용자 데이터 추출 (0) | 2023.10.27 |