Oracle Database 17. 숫자함수
숫자함수
- 컬럼에 저장되어 있는 숫자 값에 대해 처리를 하여 값을 가져올 수 있는 함수들을 의미한다.
- http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions001.htm
ex)
-- 절대값 구하기
select abs(-10)
from dual;
결과 값 : 10
ex)
-- 전직원의 급여를 2000삭감하고 삭감한 급여액의 절대값을 구한다.
select abs(sal-2000)
from emp;
ex)
-- 소수점 이하 버림
select floor(12.3456)
from dual;
결과 값 : 12
ex)
-- 급여가 1500 이상인 사원의 급여를 15%삭감한다. 단 소수점 이하는 버린다.
select floor(sal*0.85)
from emp
where sal>=1500;
ex)
-- 반올림
select round(12.3456)
from dual;
결과 값 : 12
ex)
-- 소수점 3번째 자리에서 반올림(소수점이 0)
select round(12.3456, 2)
from dual;
결과 값 : 12.35
ex)
-- 1의 자리에서 반올림(소수점이 0)
select round(12.3456, -1)
from dual;
결과값 : 10
ex)
-- 급여가 2천 이하인 사원들의 급여를 20%씩 인상한다. 단 10의 자리를 기준으로 반올림한다.
select round(sal*1.2, -2)
from emp
where sal<=2000;
ex)
-- 버림, 자리수를 정할 수 있다.
select trunc(12.3456, 2)
from dual;
결과값 : 12.34
ex)
-- 전 직원의 급여를 10자리 이하를 삭감한다.
select trunc(sal, -2)
from emp;
ex)
-- 나머지 구하기(10을 3으로 나누기 했을 때 나머지)
select mod(10, 3)
from dual;
결과값 : 1