[MSSQL] DATEADD사용하기

Database 2009.03.06 11:22 Posted by 애플자라


DATE관련 함수 몇개 더 추가해봅니다.


-- DATEADD를 이용한 날짜 변경
SELECT GETDATE() AS [TODAY], DATEADD(DAY, 3, GETDATE()) AS [ADD DATE]

TODAY                                                  ADD DATE                                              
------------------------------------------------------ ------------------------------------------------------
2008-10-20 09:58:25.450                                2008-10-23 09:58:25.450

-- DATEDIFF를 이용한 날짜 비교
SELECT GETDATE() AS [TODAY], DATEDIFF(DAY, '2007-12-25',GETDATE()) AS [DIFF]

TODAY                                                  DIFF       
------------------------------------------------------ -----------
2008-10-20 09:58:25.450                                300

-- DATEPART를 이용한 특정 날짜 부분 반환
SELECT
   DATEPART(YEAR, GETDATE()) AS [YEAR]
 , DATEPART(MONTH, GETDATE()) AS [MONTH]
 , DATEPART(DAY, GETDATE()) AS [DAY]

YEAR        MONTH       DAY        
----------- ----------- -----------
2008        10          20

 


>SQL 에서 datetime 형식의 시간에  원하는 만큼을 추가하려면 어찌해야할까...

dateadd(Type, Add, Date)  을 사용하면 됩니다.

    시간 추가.
    Date 시간에 원하는 시간을 더해서 구해 줍니다. 

    Type 에 입력될 항목

        year , yy, y
        month, m, mm
        day, d, dd
        week, w, wk
        hour, hh
        minute, m
        second, s, ss
        millisecond, ms

    Add 에 입력될 항목

        Type 에 따른 값. dateadd(year, 1  입력시  1년 추가.

    Date 추가할 기준 시간

        2008-10-10  or 2008-10-10 20:00:00  의  datetime or smalldatetime 형식


:샘플 

select dateadd(hour, 1, sdate) as vdate from XXX

XXX 테이블에서 sdate 라는 컬럼의 시간값을 얻어서  1시간을 더한 뒤에 vdate 라는 이름으로 얻는다.

출처 - 어딘지 까먹었음 @_@;;

TAG ,

댓글을 달아 주세요