강의_2장_05_TO_CHAR 함수2.pdf

TO_CHAR 함수 (숫자형 -> 문자형으로 변환하기)

20230411171521.png

실습

SELECT 5
    ,'5' AS "'5'"
-- 문자를 숫자로 명시적 변환
    ,TO_NUMBER('5')
    ,'2014-05-31' AS "'2014-05-31'"
-- 문자를 날짜로 명시적 형변환
    ,TO_DATE('2014-05-31')
FROM DUAL;

20230418150317.png

SELECT ENAME
    ,COMM
--    NULL이면 0
    ,NVL(COMM,0) AS "NVL(COMM,0)"
--    NULL이면 100
    ,NVL(COMM,100)"NVL(COMM,100)"
FROM EMP;

20230418150452.png

SELECT ENAME
    ,COMM
    ,SAL
--    NULL이면 SAL*0, 아니면 SAL+COMM
    ,NVL2(COMM,SAL+COMM,SAL*0) AS "NVL2(COMM,SAL+COMM,SAL*0)"
FROM EMP;

20230418151838.png

SELECT 5 AS "5"
--같으면 1, 아니면 NULL
    ,DECODE('A','A','1')
    ,DECODE('A','B','1')
FROM DUAL;

20230418154156.png

SELECT 5 AS "5"
--DECODE->CASE WHEN 으로 (성능 좋게 튜닝할때 변경)
--같으면 1, 아니면 NULL
    ,DECODE('A','A','1') "D"
    ,DECODE('A','B','1') "D"
--A가 A면 1 아니면 2
    ,DECODE('A','A','1','2') "D"
    ,DECODE('A','B','1','2') "D"
FROM DUAL;

20230418160104.png