[공통] DBMS별 날짜 관련 함수


1. 현재 시각 가져오기
    [Oracle]
        SELECT SYSDATE (or SYSTIMESTAMP ) FROM DUAL
    [DB2]
        SELECT CURRENT DATE (or TIMESTAMP) FROM SYSIBM.SYSDUMMY1;
    [MS-SQL, Sybase]
        SELECT GETDATE()

2. 날짜 변환
    [Oracle]
        TO_DATE ('2009/01/01 01:00:00', 'YYYY/MM/DD HH:MI:SS')
    [DB2]
        TIMESTAMP_FORMAT('2009/01/01','YYYY/MM/DD'))
    [MS-SQL, Sybase]
        CONVERT(CHAR(16), '08/25/2008 01:53:33 오후')

3. 날짜 차이 계산
   [Oracle]
        SYSDATE - TO_DATE('2009.01.01','YYYY.MM.DD') --> 현재 시간과 특정시간의 차이
        SYSDATE - 1                                                      --> 오늘 기준 하루 전
        ADD_MONTHS (SYSDATE, -1)                              --> 오늘 기준 한달 전

   [DB2]
        DAYS(CURRENT DATE) - DAYS(date('2009-01-01'))--> 현재 시간과 특정시간의 차이
        DAYS(CURRENT DATE) - DAYS(TIMESTAMP_FORMAT('2009.01.01','YYYY.MM.DD'))
                                                      --> 현재 시간과 특정시간의 차이(지정 포맷이 아닐경우)
        CURRENT TIMESTAMP - 1 DAY                            --> 오늘 기준 하루 전
        CURRENT TIMESTAMP - 1 MONTH                       --> 오늘 기준 한달 전

   [MS-SQL, Sybase]
        DATEDIFF (DAY, '2009.01.01',  GETDATE())           --> 현재 시간과 특정시간의 차이
        GETDATE() - 1                                                  --> 오늘 기준 하루 전
        DATEADD(MONTH, -1, GETDATE())                     --> 오늘 기준 한달 전

댓글

이 블로그의 인기 게시물

db2 user 생성 및 권한 설정

db2 테이블스페이스 확인 및 확장

AIX tape 백업