ms-sql 시간 날짜 더하기
-
1203회 연결
-
0회 연결
본문
1. 날짜, 시간 함수
DATEADD -- 지정한 날짜에 시간 간격을 더하여 새 datetime 값을 반환
DATEDIFF -- 지정한 두 날짜 간에 교차되는 날짜와 시간 경계값을 반환
DATENAME -- 지정한 날짜의 특정 날짜 부분을 나타내는 문자열을 반환
DATEPART -- 지정한 날짜의 특정 날짜 부분을 나타내는 정수를 반환
DAY -- 지정한 날짜의 일 부분을 나타내는 정수를 반환
GETDATE -- 현재 시스템 날짜와 시간을 datetime 값의 SQL Server™ 표준 내부 형식으로 반환
GETUTCDATE -- 현재 UTC 시간(국제 표준시 또는 그리니치 표준시)을 나타내는 datetime 값을 반환합니다.
YEAR(MONTH, DAY) -- 지정한 날짜의 연도 부분을 표시하는 정수를 반환
FormatDateTime -- 특정 날짜 형태로 지정된 날짜를 변환
세기 포함 안함 | 세기 포함 | 표준 | 입력/출력** |
- | 0 또는 100 (*) | 기본값 | mon dd yyyy hh:miAM(또는 PM) |
1 | 101 | usa | mm/dd/yy |
2 | 102 | ANSI | yy.mm.dd |
3 | 103 | 영국/프랑스 | dd/mm/yy |
4 | 104 | 독일 | dd.mm.yy |
5 | 105 | 이탈리아 | dd-mm-yy |
6 | 106 | - | dd mon yy |
7 | 107 | - | Mon dd, yy |
8 | 108 | - | hh:mm:ss |
- | 9 또는 109 (*) | 기본값 + 밀리초 | mon dd yyyy hh:mi:ss:mmmAM(또는 PM) |
10 | 110 | usa | mm-dd-yy |
11 | 111 | 일본 | yy/mm/dd |
12 | 112 | ISO | yymmdd |
- | 13 또는 113 (*) | 유럽 기본값 + 밀리초 | dd mon yyyy hh:mm:ss:mmm(24h) |
14 | 114 | - | hh:mi:ss:mmm(24h) |
- | 20 또는 120 (*) | ODBC 표준 | yyyy-mm-dd hh:mi:ss(24h) |
- | 21 또는 121 (*) | ODBC 표준(밀리초) | yyyy-mm-dd hh:mi:ss.mmm(24h) |
- | 126(***) | ISO8601 | yyyy-mm-dd Thh:mm:ss:mmm(공간 없음) |
- | 130* | 쿠웨이트 | dd mon yyyy hh:mi:ss:mmmAM |
- | 131* | 쿠웨이트 | dd/mm/yy hh:mi:ss:mmmAM |
2. 사용 예제
가. DATEADD
DECLARE @DateNow DATETIME
SET @DateNow=getdate()
SELECT DATEADD(Year, 3, @DateNow) AS NewDate -- 3년후
SELECT DATEADD(quarter, 3, @DateNow) AS NewDate -- 3분기후
SELECT DATEADD(Month, 3, @DateNow) AS NewDate -- 3달후
SELECT DATEADD(Month, -1, @DateNow) AS NewDate -- 한달전
SELECT DATEADD(dayofyear,3, @DateNow) AS NewDate -- 3일후
SELECT DATEADD(Day, 3, @DateNow) AS NewDate -- 3일후
SELECT DATEADD(Week, 3, @DateNow) AS NewDate -- 3주후
SELECT DATEADD(Hour, 3, @DateNow) AS NewDate -- 3시간후
SELECT DATEADD(minute, 3, @DateNow) AS NewDate -- 3분 후
SELECT DATEADD(second, 3, @DateNow) AS NewDate -- 3초 후
SELECT DATEADD(millisecond, 3, @DateNow) AS NewDate -- 밀리초
1) 해당 월의 마지막 날짜 구하기 <o:p></o:p>
SELECT DATEADD(ms, -5, DATEADD(mm, DATEDIFF(m, 0, GETDATE()) + 1, 0))<o:p></o:p>
2) '200708' 받은 날짜의 마지막 날짜 구하기<o:p></o:p>
SELECT Replace(Convert(Char(10), DateAdd(d, -day('200709'+'01'), DateAdd(M,1,'200709'+'01')),120),'-','')
[출처] ms-sql 시간 날짜 더하기|작성자 멍구님
댓글목록 0