DB/Oracle
TRUNC . 원하는 결과를
Edward. K
2007. 12. 27. 14:03
반응형
- 원하는 소수점 자리수 만큼만 보여주고 나머지는 없애버린다.
- EX) TRUNC(12.345, 2) => 12.34 (소수점 2자리만 보여준다)
TRUNC(12.345) => 12 (소수점 자릿수를 지정하지 않으면 정수만 보여준다.)
TRUNC('2004-05-33', 'MONTH') => '2004-05-01' (월을 기준으로 1일로 돌아온다)
TRUNC('2004-05-12', 'YEAR') => '2004-01-01' (년을 기준으로 1월 1일로 돌아온다)
달의 처음 날자, 끝날자를 가져온다.
select
TRUNC(SYSDATE-60, 'MONTH') SD1 , -- 두달전 첫날
TRUNC(LAST_DAY(SYSDATE-60)) ED1, -- 두달전 마지막날
TRUNC(SYSDATE-30, 'MONTH') SD2,
TRUNC(LAST_DAY(SYSDATE-30)) ED2,
TRUNC(SYSDATE, 'MONTH') SD3,
TRUNC(LAST_DAY(SYSDATE)) ED3
from dual
BETWEEN으로 검색하려는 경우..다음달의 첫날까지 세팅해야함..
TRUNC(SYSDATE-60, 'MONTH') SD1 , -- 두달전 첫날
TRUNC(SYSDATE-30, 'MONTH') ED1, -- 한달전 첫날
select
TRUNC(SYSDATE-60, 'MONTH') SD1 , -- 두달전 첫날
TRUNC(SYSDATE-30, 'MONTH') ED1, -- 한달전 첫날
TRUNC(SYSDATE-30, 'MONTH') SD2, -- 한달전 첫날
TRUNC(SYSDATE, 'MONTH') ED2, -- 이번달 첫날
TRUNC(SYSDATE, 'MONTH') SD3, -- 이번달 첫날
TRUNC (SYSDATE, 'IW') ED3 -- 해당일의 날자까지
from dual
- EX) TRUNC(12.345, 2) => 12.34 (소수점 2자리만 보여준다)
TRUNC(12.345) => 12 (소수점 자릿수를 지정하지 않으면 정수만 보여준다.)
TRUNC('2004-05-33', 'MONTH') => '2004-05-01' (월을 기준으로 1일로 돌아온다)
TRUNC('2004-05-12', 'YEAR') => '2004-01-01' (년을 기준으로 1월 1일로 돌아온다)
달의 처음 날자, 끝날자를 가져온다.
select
TRUNC(SYSDATE-60, 'MONTH') SD1 , -- 두달전 첫날
TRUNC(LAST_DAY(SYSDATE-60)) ED1, -- 두달전 마지막날
TRUNC(SYSDATE-30, 'MONTH') SD2,
TRUNC(LAST_DAY(SYSDATE-30)) ED2,
TRUNC(SYSDATE, 'MONTH') SD3,
TRUNC(LAST_DAY(SYSDATE)) ED3
from dual
BETWEEN으로 검색하려는 경우..다음달의 첫날까지 세팅해야함..
TRUNC(SYSDATE-60, 'MONTH') SD1 , -- 두달전 첫날
TRUNC(SYSDATE-30, 'MONTH') ED1, -- 한달전 첫날
select
TRUNC(SYSDATE-60, 'MONTH') SD1 , -- 두달전 첫날
TRUNC(SYSDATE-30, 'MONTH') ED1, -- 한달전 첫날
TRUNC(SYSDATE-30, 'MONTH') SD2, -- 한달전 첫날
TRUNC(SYSDATE, 'MONTH') ED2, -- 이번달 첫날
TRUNC(SYSDATE, 'MONTH') SD3, -- 이번달 첫날
TRUNC (SYSDATE, 'IW') ED3 -- 해당일의 날자까지
from dual
반응형