모눈종이에 사각사각

[MySQL] SELECT문에서 NULL값 대체 - IFNULL 본문

Database

[MySQL] SELECT문에서 NULL값 대체 - IFNULL

모눈종이씨 2022. 3. 17. 11:24

🌰 SELECT문에서 NULL값 대체 - IFNULL

결과값이 NULL 값이 나왔을 때 IFNULL 함수를 쓰면 원하는 값으로 대체할 수 있다.

 

SELECT IFNULL(칼럼 명, 대체 값) FROM 테이블 명

 

다음과 같은 DeliveryFee(배달비) 테이블이 있다고 할 때, 

이 테이블에서 가게별 최소 배달비를 SELECT 할 것이다.

SELECT MIN(deliveryFee) AS fee
FROM DeliveryFee D
WHERE D.storeIdx=? AND D.status='Y';

만약 위와 같이 코드를 작성한다면 storeIdx 값에 1, 2, 3의 값을 넣었을 때는 0,2000, 2200으로 값이 잘 나오지만, 1,2,3이 아닌 다른 값을 넣으면 null 값이 나올 것이다.

storeIdx에 4를 넣었을 때

 

그러나 다음과 같이 IFNULL 함수를 사용한다면 null값이 아닌 대체값으로 지정한 0이 나올 것이다.

SELECT IFNULL(MIN(deliveryFee),0) AS fee
FROM DeliveryFee D
WHERE D.storeIdx=? AND D.status='Y';

 

두 번째 파라미터인 0을 '무료 배달'로 바꾸어 준다면 다음과 같이 나올 것이다.

 


참고사이트

https://web-obj.tistory.com/491

 

[MySQL] IFNULL - SELECT 문에서 NULL 값 대체/치환

MySQL 에서 칼럼 값이 NULL 일 때 다른 값으로 대체/치환해주는 함수 1 2 SELECT IFNULL(필드명, '치환값') FROM TABLE명 Colored by Color Scripter cs * 필드명 대신 다른 표현식도 가능. 이전에 정리한 글..

web-obj.tistory.com

 

'Database' 카테고리의 다른 글

[MySQL] 천 단위 콤마 찍기 - FORMAT  (0) 2022.04.03
Comments