내일배움캠프/SQL

[SQL] null값 대체하기_COALESCE, IFNULL

dydatablog 2024. 12. 12. 11:06
  • COALESCE() vs. IFNULL()실무에서는 특정 컬럼이 NULL을 가지면 NULL이 아닌 값으로 대체하기 위해 활용된다.
    • 공통점
      • 두 함수는 모두 NULL 값을 대체하는 데 사용된다.
      • 모두 인자 중에서 처음으로 NULL이 아닌 값을 반환한다.
    • 차이점
      • COALESCE
        • 여러 인수 처리 → N개
        • 다양한 DBMS에서 지원
      • IFNULL
        • 단 두개의 인수만 처리 → 2개
        • MySQL 전용함수
    SELECT COALESCE(NULL, NULL, 5, 10); -- 결과: 5
    SELECT COALESCE(NULL, 'Fallback', NULL, 'Last Option'); 
    -- 결과: 'Fallback'
    
    SELECT IFNULL(NULL, 5); -- 결과: 5
    SELECT IFNULL('Value', 10); -- 결과: 'Value'