[MSSQL] MSSQL 몇 주차, 주별 구하기
안녕하세요.
오늘은 MSSQL에서 타겟 날짜를 설정해서 해당 날짜가 현재 몇 주차인지 어떻게 SQL문을 작성해서 알아 보는지 알아보도록 하겠습니다.
바로, SQL 을 작성해 보도록 하겠습니다.
[SQL 문]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
WITH DAY_TBL AS ( SELECT SUBSTRING('20200630', 1, 4) + '-' + CONVERT(NVARCHAR(10), DATEPART(WEEK,'20200630')) as 'CW', 'CW' as DayType UNION SELECT SUBSTRING('20200630', 1, 4) + '-' + CONVERT(NVARCHAR(10), DATEPART(WEEK,'20200630') - 1) as 'CW', 'CW' as DayType UNION SELECT SUBSTRING('20200630', 1, 4) + '-' + CONVERT(NVARCHAR(10), DATEPART(WEEK,'20200630') - 2) as 'CW', 'CW' as DayType UNION SELECT SUBSTRING('20200630', 1, 4) + '-' + CONVERT(NVARCHAR(10), DATEPART(WEEK,'20200630') - 3) as 'CW', 'CW' as DayType ) SELECT * FROM DAY_TBL
;
|
[실행 결과]
위와 같이 타겟 날짜는 20200630 이라고 설정을 해 놓았을 때, 20200630 날짜는 1년 중에서 27주차에 해당이 되고, 위와같이 +, - 연산을 이용해서 이전 혹은 이후의 주차도 함께 구할 수 있습니다.
이로써, 오늘은 간단히 MSSQL에서 타겟 날짜가 몇 주차인지 알아보는 방법에 대해서 알아 보았습니다.
감사합니다.^^