반응형
1. 올림 (CEIL)
CEIL 함수는 소수점 첫째 자리에서 무조건 올림 처리를 합니다. 특정 자리수에서의 올림은 제공되지 않으며, 소수점 바로 다음 자리에서 올림을 수행합니다.
SELECT CEIL(11.01) FROM DUAL;
-- 결과: 12
2. 나머지 (MOD)
MOD 함수는 두 수를 나눴을 때 나머지를 반환합니다. 예를 들어, 10 MOD 5의 결과가 0인 경우, 10은 5로 나누어 떨어진다는 의미입니다.
SELECT DECODE(MOD(10, 5), 0, '5로 나누어 나머지가 0임', '나머지가 0이 아님') FROM DUAL;
-- 결과: '5로 나누어 나머지가 0임'
3. 승수 (POWER)
POWER 함수는 거듭제곱을 계산할 때 사용됩니다. 예를 들어, 3의 2승 또는 2의 10승 등의 계산을 수행할 수 있습니다.
SELECT POWER(3, 2), POWER(3, -2) FROM DUAL;
-- 결과: 9, 0.1111...
SELECT POWER(2, 10) FROM DUAL;
-- 결과: 1024 (2의 10승)
4. 반올림 (ROUND)
ROUND 함수는 특정 자릿수에서 반올림 처리를 합니다. 두 번째 인수에 따라 반올림하는 자릿수를 조정할 수 있습니다.
SELECT ROUND(345.123, 0) FROM DUAL;
-- 결과: 345
SELECT ROUND(345.123, 2), ROUND(345.123, -1) FROM DUAL;
-- 결과: 345.12, 350
5. 버림 (TRUNC)
TRUNC 함수는 특정 자릿수에서 버림 처리를 합니다. 두 번째 인수로 버림할 자릿수를 지정할 수 있습니다.
SELECT TRUNC(345.123, 1), TRUNC(345.123, 0), TRUNC(345.123, -1) FROM DUAL;
-- 결과: 345.1, 345, 340
6. 특정 자릿수에서 올림하기
오라클은 특정 자릿수에서 올림을 직접 지원하지 않으므로, TRUNC 또는 ROUND 함수를 활용한 계산이 필요합니다.
TRUNC 함수로 올림하기
TRUNC 함수를 사용할 때는 원하는 자리에서 올림하고자 하는 자리에 9를 더한 후 TRUNC를 적용합니다.
SELECT TRUNC(345.123 + 0.09, 1) FROM DUAL; -- 결과: 345.2
SELECT TRUNC(345.123 + 0.9, 0) FROM DUAL; -- 결과: 346
SELECT TRUNC(345.123 + 9, -1) FROM DUAL; -- 결과: 350
ROUND 함수로 올림하기
ROUND 함수는 해당 자리에서 4를 더한 후 반올림을 적용하는 방식으로 올림 처리를 수행할 수 있습니다.
SELECT ROUND(345.123 + 0.04, 1) FROM DUAL; -- 결과: 345.2
SELECT ROUND(345.123 + 0.4, 0) FROM DUAL; -- 결과: 346
SELECT ROUND(345.123 + 4, -1) FROM DUAL; -- 결과: 350
이와 같이 오라클의 다양한 숫자 함수들을 활용하여 원하는 방식대로 수치 계산 및 처리를 할 수 있습니다.
반응형
'※ 소소한 IT > ORACLE' 카테고리의 다른 글
컬럼명으로 테이블 찾기!!! (0) | 2015.03.06 |
---|---|
오라클 TRUNCATE와 DELETE의 차이점 총정리! (0) | 2015.01.27 |
오라클 LOCK 완벽 가이드: DML, DDL 잠금 유형부터 해결 방법까지 (0) | 2015.01.14 |
Oracle DB link & synonym 개념 정리 (0) | 2014.10.08 |
Oracle 테이블스페이스(TableSpace) 개념 정리 (0) | 2014.09.26 |