MSSQL 원하는 날짜 및 시간 구하기 (DATEADD)
원하는 날짜 및 시간을 구할 때가 빈번하게 발생하는데요. MS SQL에서는 DATEADD() 함수를 제공하고 있습니다. DATEADD() 함수는 number(부호 있는 정수)를 추가해서 원하는 날짜 및 시간 값을 구할 수 있는데요 예를 들어 DATEADD() 함수를 사용하여 오늘부터 3000분 후의 날짜를 찾을 수 있습니다.
그럼 DATEADD() 함수에 대해서 알아보죠.
◎ 포스트 기준
– Microsoft SQL Server 2019
– SSMS 18.10
MSSQL 원하는 날짜 및 시간 구하기
1. DATEADD 함수 구문 (Syntax)
DATEADD (datepart, number, date)
2. datepart 인수

사용 예제
1. 예제 1)
DECLARE @datetime datetime = '2022-02-11 14:10:10'
SELECT '10시간 이전', DATEADD(HOUR, -10, @datetime)
UNION ALL
SELECT '7일 이전', DATEADD(DAY, -7, @datetime)
UNION ALL
SELECT '10일 이전', DATEADD(D, -10, @datetime)
UNION ALL
SELECT '1개월 이후', DATEADD(MONTH, 1, @datetime)
UNION ALL
SELECT '1년 이후', DATEADD(YEAR, 1, @datetime)
2. 예제 2)
-- 7일 이전 DATA 저장값 가져오기
SELECT *
FROM BS_TABLE
WHERE INSRT_DT >= DATEADD(DAY, -7, CONVERT(NVARCHAR, GETDATE(), 112))
AND INSRT_DT <= CONVERT(NVARCHAR, GETDATE(), 112)
ORDER BY INSRT_DT함께 보면 좋은 게시글
- MSSQL 특정일 요일 구하기 (DATENAME, DATEPART)
- MSSQL CONVERT 날짜 및 시간 스타일 (datetime to string)
- MSSQL 월의 시작 일자, 마지막 일자 구하기 – EOMONTH 함수
- MSSQL COUNT, SUM, AVG, MAX, MIN 사용법 – 집계 함수
- MSSQL 뷰(VIEW) 생성 및 활용 방법, 뷰 스크립트 확인 방법
이 글이 도움이 되셨다면 공유 부탁 드립니다.


![[SSMS] 로컬 서버(PC)에 설치한 MSSQL 서버 연결하는 방법](https://bluesharehub.com/wp-content/uploads/2022/02/img_41.png)
