2012. 9. 14. 17:52

MS SQL 시간 함수 DATEDIFF / Dateadd

SQL 에서 시간함수를 나타내주는 쿼리입니다.



* 분 단위 계산

select DATEDIFF ( mi , getdate() , getdate()-10 )

=> 현재 로부터 (getdate()), 에서 10분전 시간을 구하라 입니다.


* 초단위 단위 계산
select DATEDIFF ( s , getdate() , getdate()-10 )

=> 현재 로부터 (getdate()), 에서 10초전 시간을 구하라 입니다.


* 시간 단위 계산
select DATEDIFF ( hour , getdate() , getdate()-10 )

=> 현재 로부터 (getdate()), 에서 10시간전 시간을 구하라 입니다.


* 날자 단위 계산
select DATEDIFF ( day , getdate() , getdate()-10 )

=> 현재 로부터 (getdate()), 에서 10일전 시간을 구하라 입니다.


* 월 단위 계산
select DATEDIFF ( month , getdate() , getdate()-10 )

=> 현재 로부터 (getdate()), 에서 10개월전 시간을 구하라 입니다.


* 년 단위 계산
select DATEDIFF ( year , getdate() , getdate() -10 )

=> 현재 로부터 (getdate()), 에서 10년전 시간을 구하라 입니다.





# 예를 들기위한 테이블입니다.





SELECT top 10 * FROM UrlCheckLog where TimeGenerated > Dateadd(hour, -20, Getdate())

=> UrlCheckLog 테이블에 상위 10번째 열을 검색하되

   TimeGenerated 이 20시간 전인 데이터 값을 select 하라 입니다.