핵심 원리: TRUNC 함수
TRUNC
함수는 숫자를 지정된 자릿수로 자르고, 나머지 자릿수를 버리는 역할을 합니다. 반올림 없이 소수점 이하나 정수 자리에서 숫자를 잘라낼 수 있습니다.
기본 문법:
TRUNC(number, decimal_places)
number
: 자를 숫자decimal_places
: 자를 자리 (양수는 소수점 이하, 음수는 정수 자리)
예시:
TRUNC(876.567, 1)
: 소수점 첫 번째 자리 이후 숫자를 버리고, 876.5를 반환합니다.TRUNC(876.567, -1)
: 정수 자리에서 일의 자리 숫자를 버리고, 870을 반환합니다.
연습 문제
- 숫자 1234.567을 소수점 두 번째 자리에서 잘라내어 출력하세요.
- 숫자 987.654를 소수점 이전 십의 자리에서 잘라내어 출력하세요.
연습 문제 해답
TRUNC(1234.567, 2)
를 사용하면 결과는 1234.56이 됩니다.
SELECT TRUNC(1234.567, 2) AS truncated_value
FROM dual;
TRUNC(987.654, -1)
를 사용하면 결과는 980이 됩니다.
SELECT TRUNC(987.654, -1) AS truncated_value
FROM dual;
응용 문제
- 숫자 12345.6789를 소수점 세 번째 자리에서 잘라내어 출력하고, 소수점 이전 백의 자리에서 잘라내어 출력하세요.
응용 문제 해답
SELECT TRUNC(12345.6789, 3) AS truncated_decimal, TRUNC(12345.6789, -2) AS truncated_hundred FROM dual;
TRUNC(12345.6789, 3)
은 소수점 세 번째 자리 이후 숫자를 잘라내어 12345.678을 반환합니다.TRUNC(12345.6789, -2)
는 백의 자리에서 숫자를 잘라내어 12300을 반환합니다.
실무 유형 문제
- 급여 테이블에서 직원들의 급여를 백의 자리에서 잘라내어 출력하고, 이를 새로운 열로 추가하세요.
실무 유형 문제 해답
SELECT ename, sal,
TRUNC(sal, -2) AS truncated_salary
FROM emp;
이 쿼리는 각 직원의 급여를 백의 자리에서 잘라내어 새로운 열 truncated_salary
에 출력합니다.