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 라는 이름으로 얻는다.
출처 - 어딘지 까먹었음 @_@;;
'Database' 카테고리의 다른 글
[ORACLE] 토드에서 SQL문 자동 포멧팅 (0) | 2009.03.23 |
---|---|
[MSSQL] 주민번호 or 사업자등록번호가 올때 LENGTH로 길이를 구분하여 짜르기 (0) | 2009.03.06 |
[ORACLE] CLOB조회 (1) | 2009.02.10 |
[ORACLE] - REPLACE 하기 (0) | 2008.10.30 |
[MYSQL] GROUP BY, COUNT (0) | 2008.08.20 |