④ NULLIF (expr1, expr2)

    NULLIF 함수는 expr1과 expr2을 비교해 같으면 NULL을, 같지 않으면 expr1을 반환한다.

    입력

        SELECT employee_id,
               TO_CHAR(start_date, 'YYYY') start_year,
               TO_CHAR(end_date, 'YYYY') end_year,
               NULLIF(TO_CHAR(end_date, 'YYYY'), TO_CHAR(start_date, 'YYYY') ) nullif_year
        FROM job_history;
    

    결과

        EMPLOYEE_ID     START_YEAR   END_YEAR NULLIF_YEAR
        --------------- ----------- ---------------------
                1022001       2006   2006
                1011997       2001   2001
                1012001       2005   2005
                2012004       2007   2007
                1142006       2007   2007
                1222007       2007
                2001995       2001   2001
                1762006       2006
                1762007       2007
                2002002       2006   2006
    
        10개의 행이 선택됨.
    

    위 문장은 job_history 테이블에서 start_date와 end_date의 연도만 추출해 두 연도가 같으면 NULL을, 같지 않으면 종료년도를 출력하는 쿼리다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.