MySQL NULL 값 변환 IFNULL 사용 방법

MySQL에서 컬럼 값이 NULL인 경우가 존재합니다.

NULL인 값을 그대로 사용하는 경우도 있지만 다른 값으로 변환해 사용하고 싶은 경우가 있습니다.

오라클에서는 NVL 함수가 존재합니다.

NVL 함수는 값이 NULL인 경우 원하는 값으로 변경해주는 함수입니다.

MySQL에서도 동일한 함수가 있습니다.

IFNULL 함수입니다.

값이 NULL인 경우 지정한 값으로 변환해줍니다.

사용 방법을 보겠습니다.

IFNULL(값, 변환 값)

 

값에는 컬럼을 지정하거나 변수 또는 값을 집적 지정할 수 있습니다.

값이 NULL이 아닌 경우에는 입력값을 그대로 출력합니다.

하지만 값이 NULL인 경우에는 변환 값을 출력합니다.

샘플을 보면서 사용 방법을 알아보겠습니다.

 

값이 있는 경우

SET @str = 'AbcD';

SELECT @str;

-- 결과
> AbcD

 

값이 NULL인 경우

SET @str = NULL;

SELECT @str;

-- 결과
>

값이 있으면 값을 출력하고 NULL인 경우에는 아무런 출력 결과가 없습니다.

IFNULL 함수를 사용해 NULL인 경우에도 값을 출력해보도록 하겠습니다.

 

값이 있는 경우

SET @str = 'AbcD';

SELECT IFNULL(@str,'ifnull-test');

-- 결과
> AbcD

 

값이 NULL인 경우

SET @str = NULL;

SELECT IFNULL(@str,'ifnull-test');

-- 결과
> ifnull-test

 

IFNULL 함수를 사용해도 값이 있는 경우라면 값을 그대로 출력합니다.

NULL인 경우에만 지정한 값을 NULL 대신해 출력을 합니다.

샘플 소스에서는 문자열을 지정했지만 숫자도 지정할 수 있습니다.

댓글