[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'14+ '-' + CONVERT(NVARCHAR(10), DATEPART(WEEK,'20200630')) as 'CW''CW' as DayType

    UNION

    SELECT SUBSTRING('20200630'14+ '-' + CONVERT(NVARCHAR(10), DATEPART(WEEK,'20200630'- 1) as 'CW''CW' as DayType

    UNION

    SELECT SUBSTRING('20200630'14+ '-' + CONVERT(NVARCHAR(10), DATEPART(WEEK,'20200630'- 2) as 'CW''CW' as DayType

    UNION

    SELECT SUBSTRING('20200630'14+ '-' + CONVERT(NVARCHAR(10), DATEPART(WEEK,'20200630'- 3) as 'CW''CW' as DayType

)

SELECT *

FROM DAY_TBL

 

;

 

 

 

Colored by Color Scripter

cs

 

[실행 결과]



위와 같이 타겟 날짜는 20200630 이라고 설정을 해 놓았을 때, 20200630 날짜는 1년 중에서 27주차에 해당이 되고,  위와같이 +, - 연산을 이용해서 이전 혹은 이후의 주차도 함께 구할 수 있습니다.

 

이로써, 오늘은 간단히 MSSQL에서 타겟 날짜가 몇 주차인지 알아보는 방법에 대해서 알아 보았습니다.

 

감사합니다.^^


728x90

이 글을 공유하기

댓글

Designed by JB FACTORY