대덕인재/Oracle

[Oracle D-8] 숫자함수

꼬마버거 2025. 4. 11. 18:02

✅ Oracle의 대표적인 숫자 함수들 

 
함수 이름 설명 예시
ABS(n) 절댓값 ABS(-5) → 5
CEIL(n) 올림 CEIL(4.2) → 5
FLOOR(n) 내림 FLOOR(4.9) → 4
ROUND(n) 반올림 ROUND(12.345, 2) → 12.35
TRUNC(n) 버림 (소수점 자름) TRUNC(12.345, 2) → 12.34
MOD(a, b) 나머지 MOD(10, 3) → 1
POWER(a, b) a의 b제곱 POWER(2, 3) → 8
SQRT(n) 제곱근 SQRT(25) → 5
SIGN(n) 부호 반환 (양수 1, 음수 -1, 0이면 0) SIGN(-5) → -1

 

1. ABS()

SELECT ABS(-10) AS 절댓값 FROM DUAL;
-- 결과: 10

2. ROUND() vs TRUNC()

SELECT ROUND(123.456, 2) AS 반올림, TRUNC(123.456, 2) AS 버림 FROM DUAL;
-- 결과: 123.46 / 123.45

3. CEIL() / FLOOR()

SELECT CEIL(7.2), FLOOR(7.8) FROM DUAL;
-- 결과: 8 / 7

4. MOD() (나머지)

SELECT MOD(17, 5) AS 나머지 FROM DUAL;
-- 결과: 2

5. POWER() / SQRT()

SELECT POWER(3, 4) AS 제곱, SQRT(49) AS 제곱근 FROM DUAL;
-- 결과: 81 / 7

✅ 숫자 함수는 어디에 자주 쓰일까?

  • 나이 계산 (MOD, TRUNC, ROUND)
  • 통계 계산 (평균 구할 때 반올림 등)
  • 윤년 계산 (MOD(..., 4))
  • 페이지 계산 (올림 → CEIL)
  • 그래프 데이터 준비

📌 참고 팁

  • DUAL은 Oracle에서 테스트할 때 사용하는 가상의 1행짜리 테이블이야.
  • ROUND, TRUNC는 자리수 지정 가능: ROUND(숫자, 자리수)
  •       ㄴ자리수 생략하면 소수점 첫째 자리로 기본 설정됨