초보 관리자/DB 2009/01/29 11:24 by 비트센스
 
짬짬히 이런 저런 작업을 하면서 글을 쓰기 때문에,
실제 사용하는 것만 올립니다. 덕분에 글이 짧네요.

MSSQL에서 날짜 연산 방법입니다.

예. 어제 일자를 알고 싶다.
select getdate(), dateadd(d, -1, getdate())
쉽죠? ^^;;

연산 날짜 부분(datepart) 인지는 몇개 없습니다.

yy : 년
mm : 월
dy, y : dayofyear (먼지 잘 모르겠음)
d : 일
wk : 주
hh : 시
mi, n : 분
s : 초
ms : 밀리세컨드

declare @날자 datetime

set @날자='2008-01-01'

---현재월의 초일 --
SELECT dateadd(d,-day(@날자)+1,@날자)

---현재월의 말일 --
SELECT dateadd(d,-day(dateadd(m,1,@날자)), dateadd(m,1,@날자))

---전월의 초일 --
SELECT dateadd(m,-1, dateadd(d,-day(@날자)+1,@날자))

---전월의 말일 --
SELECT dateadd(d,-day(@날자),@날자)

== 또다른 매달말일 구하는 법
SELECT CONVERT(Char(8), DateAdd(day, -1, DateAdd(month, 1, @종료월 + '01')), 112)

'Database > SQL-Server' 카테고리의 다른 글

DBCC 명령어  (0) 2011.06.29
DBCC CHECKDB, CHECKTABLE (손상된 테이블 복구)  (0) 2011.06.27
[MSSQL] 날짜 연산 DATEADD  (0) 2011.05.13
MSSQL Date Type Convert  (0) 2011.05.13
[MSSQL - SELECT 와 INSERT 동시 처리]  (0) 2011.05.09

+ Recent posts