본문 바로가기

프로그래밍/MSSQL

[MSSQL] DATEDIFF, DATEADD 날짜 비교, 날짜 계산

반응형

 

 

 

 

 

 

DATEDIFF

날짜의 차이를 계산하는 함수이다.

 

즉, 시작 날짜에서 종료 날짜까지의 일 수 차이를 반환한다.

 

SELECT DATEDIFF(날짜형식, 시작날짜, 종료날짜)

 

 

 

1) 두 날짜의 차이 일 수

 

SELECT DATEDIFF(DAY, '2017-02-13', '2017-03-15') AS '차이 일 수'

결과 데이터

 

 

2) 두 날짜 비교

 

DECLARE @Date DATETIME = '2017-02-15'
 
IF DATEDIFF(d, @Date, '2017-02-13') > 0
    SELECT '2017-02-13 미만 (미포함)'
ELSE IF DATEDIFF(d, @Date, '2017-02-13') <= 0
    SELECT '2017-02-13 이후 (포함)'

 

결과 데이터

 

 

 

 

 

 

 

DATEADD

특정 날짜와 숫자값을 가지고 계산하는 함수이다.

 

SELECT DATEADD(날짜형식, 값, 날짜)

 

 

 

 

1) 2017-02-13을 기준으로 +5일

 

SELECT DATEADD(D, 5, '2017-02-13') AS '+5일'

 

결과 데이터

 

 

 

 

 

2) 2017-02-13을 기준으로 -5달

 

SELECT DATEADD(MONTH, -5, '2017-02-13') AS '-5달'

 

결과 데이터

 

 

 

 

3) 현재를 기준으로 +5년

 

SELECT DATEADD(YEAR, 5, GETDATE()) AS '+5년'

 

결과 데이터

 

 

 

 

4) 2017년 2월의 마지막 일

 

SELECT DATEADD(DAY, -1, DATEADD(MONTH, 1, '2017-02-01')) AS '2017년 2월 마지막일'

 

결과 데이터

 

 

 

 

 

 

[MSSQL] date format 날짜 형식 (CONVERT DATETIME)
[MSSQL] DATENAME, DATEPART (요일, 올해 몇 번째 날, 주말을 제외한 평일 일수)
[MSSQL] 일/주/월/년도/요일 별로 카운트

 

 

반응형