-
[MSSQL] 월 더하기/빼기, 첫째 날/마지막 날DB/MSSQL 2020. 12. 11. 13:32
1. 월 더하기/빼기
DECLARE @RESULT NVARCHAR(50) SET @RESULT = DATEADD(MONTH, -3, GETDATE()) -- 20.12.11기준 -- 출력 결과 : 09 11 2020 1:07PM
DATEADD(datepart, number, date)
- 많이 쓰는 datepart
- year(=yy, yyyy)
- month(mm, m)
- day(dd, d)
2. 이번달 월 첫째 날/마지막 날
DECLARE @START NVARCHAR(50) DECLARE @END NVARCHAR(50) --기준일 : 2020-12-11 --이번 달 첫째 날짜(1일) SET @START = FORMAT(DATEADD(MM, DATEDIFF(MM, 0, GETDATE()), 0), 'yyyyMMdd') --이번 달 마지막 날짜 SET @END = CONVERT(CHAR(10), EOMONTH(GETDATE()), 112) PRINT @START PRINT @END --출력결과 --20201201 --20201231
DATEDIFF(datepart, startdate, enddate)
-
DATEDIFF(MM, 0, GETDATE()) : 0일일부터 2020.12일까지 차이 계산
-
결과 : 1451
DATEADD(datepart, number, date)
-
DATEADD(MM, 1451, 0) : 0일에 1451일을 더함
-
결과 : 12 1 2020 12:00AM
FORMAT(value, format [, culture])
-
FORMAT(12 1 2020 12:00AM, 'yyyyMMdd') : 데이터 형식 변환
-
결과 : 20201201
'DB > MSSQL' 카테고리의 다른 글
[MSSQL] 날짜 Date Format 지정/변환(FORMAT, CONVERT) (0) 2020.12.11 - 많이 쓰는 datepart