ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 6.3 숫자 함수
    Oracle 2023. 8. 1. 16:36

    6.3 숫자함수

    • 숫자 데이터를 가공하는 함수

    6.3.1 ROUND

    • 대상 숫자를 반올림한다. 반올림할 위치를 지정하지 않으면 소수점 아래 첫째 자리에서 반올림.
    ROUND({숫자}, [반올림 위치])

    {} : 필수, [] : 선택

     

    SELECT ROUND(1234.5678) AS ROUND,
           ROUND(1234.5678, 0) AS ROUND_0,
           ROUND(1234.5678, 1) AS ROUND_1,
           ROUND(1234.5678, 2) AS ROUND_2,
           ROUND(1234.5678, -1) AS ROUND_M1,
           ROUND(1234.5678, -2) AS ROUND_M2
    FROM dual;

    6.3.2 TRUNC

    • 대상숫자를 지정된 자리부터 버림 처리. 지정하지 않으면 소수점 첫째 자리에서 버림.
    TRUNC({숫자}, [버림 위치])
    SELECT TRUNC(1234.5678) AS TRUNC,
           TRUNC(1234.5678, 0) AS TRUNC_0,
           TRUNC(1234.5678, 1) AS TRUNC_1,
           TRUNC(1234.5678, 2) AS TRUNC_2,
           TRUNC(1234.5678, -1) AS TRUNC_M1,
           TRUNC(1234.5678, -2) AS TRUNC_M2
    FROM dual;

     

    6.3.3 CEIL, FLOOR

    • CEIL : 대상 숫자와 가장 가까운 큰 정수 반환. 소수점 1의 자리에서 올림과 유사.
    • FLOOR : 대상 숫자와 가장 가까운 작은 정수 반환. 소수점 1의 자리에서 버림과 유사.
    CEIL({숫자})
    FLOOR({숫자})
    SELECT CEIL(3.14),
           FLOOR(3.14),
           CEIL(-3.14),
           FLOOR(-3.14)
    FROM dual;

    양수, 음수에 따른 반환 결과 차이를 유의할 것

     

    6.3.4 MOD

    • 한 숫자를 다른 숫자로 나눈 나머지(정수)를 반환
    MOD({나눗셈의 대상 숫자(피제수)}, {나눌 숫자(제수)}
    SELECT MOD(15, 6),
           MOD(10, 2),
           MOD(11, 2)
    FROM dual;

    다른 언어에서는 %를 나머지 연산자로 기본 제공하는 경우가 많은데, DB언어에서는 지원하지 않는 게 아쉽다. 굉장히 활용도 많은 녀석인데.

Designed by Tistory.