MSSQL 원하는 날짜 및 시간 구하기 (DATEADD)

MSSQL 원하는 날짜 및 시간 구하기 (DATEADD)

원하는 날짜 및 시간을 구할 때가 빈번하게 발생하는데요. MS SQL에서는 DATEADD() 함수를 제공하고 있습니다. DATEADD() 함수는 number(부호 있는 정수)를 추가해서 원하는 날짜 및 시간 값을 구할 수 있는데요 예를 들어 DATEADD() 함수를 사용하여 오늘부터 3000분 후의 날짜를 찾을 수 있습니다.

그럼 DATEADD() 함수에 대해서 알아보죠.

◎ 포스트 기준

– Microsoft SQL Server 2019

– SSMS 18.10

1. DATEADD 함수 구문 (Syntax)

DATEADD (datepart, number, date)

2. datepart 인수

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)
사용 예제1 예시 화면입니다.


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


이 글이 도움이 되셨다면 공유를 부탁드립니다. 다음 글에서 뵙겠습니다!

위로 스크롤