데이터베이스

DATABASE STEP 11 - Date_Time_Function

IT의 큰손 2023. 3. 18. 09:53
728x90

★ Date_Time_Function (날짜 시간 함수)

  • sysdate
    • 현재 시스템의 시각을 반환
    • 자바로 따지면, Calendar.getInstance()
    • data sysdate
    • months_between() : 시각 - 시각 = 시간(월)
    • add_months() : 현재 일 수 에서 한달을 더하는 것
  • 날짜 연산
    • 1. 시각 - 시각 = 시간(일)
    • 2. 시각 + 시간 = 시각
    •  3. 시각 - 시간 = 시각

 

★ 사용 예

  • 1. 시각 - 시각 = 시간(일)
select
    name,
    ibsadate,
    round(sysdate - ibsadate) as "근무일수",
    round((sysdate-ibsadate) / 365) as "근무년수", -- 사용 금지
    round((sysdate-ibsadate) * 24) as "근무시수",
    round((sysdate-ibsadate) * 24 * 60) as "근무분수",
    round((sysdate-ibsadate) * 24 * 60 * 60) as "근무초수"
from tblInsa;

-- ORA-00972: identifier is too long
select 
    title,
    adddate,
    completedate,
    round((completedate - adddate) *24, 1) as "실행하기까지걸린시간"
from tblTodo
    --where round((complete - adddate) *24, 1) <=1
    order by round((completedate - adddate) * 24, 1) desc;
  • 2. 시각 + 시간(일) = 시각
  • 3 시각 - 시간(일) = 시각
select
    sysdate,
    sysdate + 100 as "100일 뒤",
    sysdate - 100 as "100일 전",
    sysdate + (3/24) as "3시간 후",
    sysdate + (5/24) as "5시간 전",
    sysdate + (30/60/24) as "30분 뒤"
from dual;

 

 

728x90