hyeonga_code

Database_16_숫자 함수_ROUND, TRUNC, MOD, CEIL, FLOOR 본문

Oracle Database

Database_16_숫자 함수_ROUND, TRUNC, MOD, CEIL, FLOOR

hyeonga 2023. 7. 19. 05:59
반응형

-- SQL 함수
    -- 숫자 함수
        -- ROUND    : 특정 위치에서 반올림한 값을 반환합니다.
        -- TRUNC    : 특정 위치에서 버림한 값을 반환합니다.
        -- MOD  : 인수로 나눈 나머지 값을 반환합니다.
        -- CEIL     : 지정된 숫자보다 큰 정수 중 가장 작은 정수를 반환합니다.
        -- FLOOR    : 지정된 숫자보다 작은 정수 중 가장 큰 정수를 반환합니다.
        
        
        -- ROUND ('지정 숫자', 반올림 할 소수점 자리 수')
SELECT ROUND(45.923,2), ROUND(45.923,0), ROUND(45.923,-1)
FROM dual;
    /*
    ROUND(45.923,2)       ROUND(45.923,0)       ROUND(45.923,-1)
    ----------------------------------------------------------------------------------------
            45.92                       46                             50
    */



        -- TRUNC ('지정 숫자', 남길 소수점 자리 수')
            -- 음수를 사용하면 정수를 의미합니다.
SELECT TRUNC(45.923,2), TRUNC(45.923), TRUNC(45.923,-2)
FROM dual;
    /*
    TRUNC(45.923,2)        TRUNC(45.923)        TRUNC(45.923,-2)
    --------------------------------------------------------------------------------------
            45.92                       45                           0
    */



        -- MOD('지정 숫자', 나누는 값)
            -- 값이 홀수인지 짝수인지 확인하는 경우에도 많이 사용합니다.
SELECT last_name, salary, MOD(salary, 5000)
FROM employees
WHERE job_id = 'SA_REP';
    /*
    LAST_NAME         SALARY  MOD(salary, 5000)
    ---------------------------------------------------------------------
    Abel                     11000         1000
    Taylor                    8600         3600
    Grant                     7000         2000
    */



        -- CEIL 
SELECT CEIL(4.457), CEIL(-4.457)
FROM dual;
    /*
    CEIL(4.457)     CEIL(-4.457)
    ----------------------------------------------
        5                     -4
    */


    
        -- FLOOR 
SELECT  FLOOR(4.457), FLOOR(-4.457)
FROM dual;
    /*
    FLOOR(4.457)    FLOOR(-4.457)
    ------------------------------------------------
        4                         -5
    */

반응형