숫자함수
1. ROUND
해당 소수점 자리에서 반올림할 때
지정숫자가 양수? 소수점 아래
지정숫자가 음수? 소수점 위
생략되면 정수로 반올림
SELECT ROUND('1234.567',1),
ROUND('1234.567',-1),
ROUND('1234.567')
FROM DUAL;
ROUND('1234.567',1) ROUND('1234.567',-1) ROUND('1234.567')
------------------- -------------------- -----------------
1234.6 1230 1235
2. TRUNC
해당 소수점 자리에서 절삭할 때
SELECT TRUNC('1234.567',1),
TRUNC('1234.567',-1),
TRUNC('1234.567')
FROM DUAL;
TRUNC('1234.567',1) TRUNC('1234.567',-1) TRUNC('1234.567')
------------------- -------------------- -----------------
1234.5 1230 1234
3. SIGN
값이 음수 => -1, 0 => 0, 양수 => +1
SELECT SIGN(-10), SIGN(0), SIGN(0), SIGN(10), SIGN(NULL)
FROM DUAL;
SIGN(-10) SIGN(0) SIGN(0) SIGN(10) SIGN(NULL)
---------- ---------- ---------- ---------- ----------
-1 0 0 1
4. CEIL
주어진 숫자보다 크거나 같은 정수 중 최소값 구함
SELECT CEIL(2), CEIL(2.1) FROM DUAL;
CEIL(2) CEIL(2.1)
---------- ----------
2 3
SELECT CEIL(9.1), CEIL(9.9) FROM DUAL;
CEIL(9.1) CEIL(9.9)
---------- ----------
10 10
5. FLOOR
SELECT FLOOR(2), FLOOR(2.1) FROM DUAL;
FLOOR(2) FLOOR(2.1)
---------- ----------
2 2
6. MOD
MOD(m,n) m을 n으로 나누고 남은 나머지를 리턴
SELECT MOD(1,3), MOD(2,3), MOD(3,3), MOD(4,3)
FROM DUAL;
MOD(1,3) MOD(2,3) MOD(3,3) MOD(4,3)
---------- ---------- ---------- ----------
1 2 0 1
7. POWER
해당 수에 대한 지수값을 표현
SELECT POWER(2, NO) FROM MOD_TEST;
POWER(2,NO)
-----------
2
4
8
16
32
64
128
256
512
1024
8. ABS 절대값
SELECT ABS(13.4), ABS(-13.4) FROM DUAL
ABS(13.4) ABS(-13.4)
---------- ----------
13.4 13.4
'Oracle(DB관련)' 카테고리의 다른 글
오라클 함수(lead, lag) 이용 게시판 이전글, 다음글 (0) | 2010.09.16 |
---|---|
오라클 암호화 (0) | 2010.04.22 |
문자함수 (0) | 2009.11.04 |
날짜함수 (0) | 2009.11.04 |
그룹별 합계, 누적합계 sum() (0) | 2009.11.04 |