밥벌이/Database

[Oracle] 날짜,시간차이 구하기(년/개월/일/시/분/초)

mypiece 2015. 9. 18. 21:42
--날짜차이 년/월/일/시/분/초
select trunc(months_between(afterTime, beforeTime)/12) --년
       ||'년 '||
       trunc(mod(months_between(afterTime, beforeTime),12)) --월
       ||'개월 '||
       trunc(afterTime - add_months(beforeTime, months_between(afterTime,beforeTime))) --일
       ||'일 '||
       to_char(to_date(trunc(mod(afterTime - beforeTime, 1)*24*60*60),'SSSSS'),'HH24"시간 "MI"분 "SS"초"') hms --시:분:초        
from
(
select to_date('1992-12-31 20:20:20','YYYY-MM-DD HH24:MI:SS') as beforeTime,
       to_date('2014-10-01 22:10:10','YYYY-MM-DD HH24:MI:SS') as afterTime      
 from dual
)