DATEADD를 사용한 날짜 추가 및 빼기
- Version : SQL Server 2000, 2005, 2008R2, 2012
DATEADD 함수는 지정된 시간에 대해서 사용자가 원하는 시간을 더하거나 뺄 수 있다.
DATEADD에 사용되는 시간 단위는 버전마다 약간의 차이가 있다.
단위 | SQL 2000, 2005 | 2008 / R2 | 약어 |
NANOSECOND | NO | YES | ns |
MICROSECOND | NO | YES | mcs |
MILLISECOND | YES | YES | ms |
SECOND | YES | YES | ss, s |
MINUTS | YES | YES | mi, n |
HOUR | YES | YES | hh |
WEEKDAY | YES | YES | dw, w |
WEEK | YES | YES | wk, ww |
DAY | YES | YES | dd, d |
DAYOFYEAR | YES | YES | dy, y |
MONTH | YES | YES | mm, m |
QUARTER | YES | YES | qq, q |
YEAR | YES | YES | yy, yyyy |
위의 표에서 확인 할 수 있듯이 버전에 따라 사용할 수 없는 데이터 값들이 있다.
아래 실습은 각 데이터 값에 따라 나타나는 결과를 볼 수 있다.
SQL Server 2008R2에서 실습 하였으며 NANOSECOND, MICROSECOND를 확인 하여 위하여 DATETIME2 타입을 사용하였다.
DECLARE @DATE datetime2 SET @DATE = GETDATE()
SELECT @DATE SELECT DATEADD(NANOSECOND, 150000, @DATE) SELECT DATEADD(MICROSECOND, 150000, @DATE) SELECT DATEADD(MILLISECOND, 150000, @DATE) SELECT DATEADD(SECOND, 1500, @DATE) SELECT DATEADD(MINUTE, 15, @DATE) SELECT DATEADD(HOUR, 5, @DATE) SELECT DATEADD(WEEKDAY, 5, @DATE) SELECT DATEADD(WEEK, 5, @DATE) SELECT DATEADD(DD, 5, @DATE) SELECT DATEADD(DY, 5, @DATE) SELECT DATEADD(MM, 5, @DATE) SELECT DATEADD(Q, 2, @DATE) SELECT DATEADD(YYYY, 1, @DATE) |
DATEADD 관련 링크 : http://msdn.microsoft.com/ko-kr/library/ms186819.aspx
2013-01-07 / 강성욱 / http://sqlmvp.kr
'SQL Server > SQL Server Tip' 카테고리의 다른 글
키워드로 PROCEDURE, FUNCTION 찾기 (0) | 2015.07.20 |
---|---|
BCP 사용 (0) | 2015.07.20 |
Change Data Capture(CDC) – 변경 이력 추적 (0) | 2015.07.20 |
SSMS 에서 디버깅 하기 (0) | 2015.07.20 |
CLR 등록 및 활성화 하기 (0) | 2015.07.20 |