Backend/DB

[ORACLE] TRUNC 함수 사용법

Emil :) 2021. 1. 21. 17:40
728x90
반응형
이 글은 Notion에서 작성 후 재편집한 포스트입니다.

목차


개요


TRUNC 함수에 대해 알아보자.

시간이나 숫자를 절사할 때 쓰는 함수로, 시간의 경우 TO_DATE 함수를 쓰면 귀찮아지니.. 사용가능하다면 이걸 잘 활용해주도록 하자.

참고


www.w3resource.com/oracle/datetime-functions/oracle-trunc(date)-function.php

 

Oracle TRUNC (date) function - w3resource

Oracle TRUNC (date) function: The TRUNC (date) function returns the date with the time portion of the day truncated to a specific unit of measure. This tutorial explains how to use the TRUNC (date) function with syntax, parameters, examples and explanation

www.w3resource.com

 

진행 과정


1. 시간 절사


SELECT SYSDATE AS 현재시간,
       TRUNC(SYSDATE) AS 시간절사,
       TRUNC(SYSDATE, 'DD') AS 시간절사2, --TRUNC(SYSDATE)와 동일
       TRUNC(SYSDATE, 'HH24') AS 분초자르기,
       TRUNC(SYSDATE, 'MI') AS 초자르기,
       TRUNC(SYSDATE, 'YEAR') AS 월일초기화, -- TRUNC(SYSDATE, 'YYYY')와 동일
       TRUNC(SYSDATE, 'MM') AS 일초기화, --TRUNC(SYSDATE, 'MONTH')와 동일
       TRUNC(SYSDATE, 'DAY') AS 요일초기화 --해당 주의 일요일로 초기화 
       FROM DUAL;

그렇게 복잡한 함수가 아니니, 사용법만 빠르게 숙지해주도록 하자.

참고로 오늘이 2021년 01월 21일이라면, TRUNC(SYSDATE) 를 하면 시간 범위는

2021년 01월 21일 00시 00분 00초 부터
2021년 01월 21일 23시 59분 59초 까지

가 된다.

2. 숫자 절사


SELECT 1234.567 AS 주어진수,
       TRUNC(1234.567) AS 소수점절사,
       TRUNC(1234.567, '1') AS 소수점첫째자리절사, -- 기본적으로 반올림하지않는다.
       TRUNC(1234.567, '2') AS 소수점둘째자리절사,
       TRUNC(1234.567, '-1'), -- 1단위절사
       TRUNC(1234.567, '-2'), -- 10단위절사
       TRUNC(1234.567, '-3') -- 100단위절사 
       FROM DUAL;

결과


잘 숙지해서 써먹어주자!

 

구독 및 하트는 정보 포스팅 제작에 큰 힘이됩니다♡

728x90
반응형