MSSQL 해당 주차의 날짜 및 요일 뽑기
예를 들어 200705 이라고 입력하면 (5월 1일은 화요일입니다.)
제가 얻고자 하는 결과는
월요일부터 토요일까지를 한주로 계산해서...
주차 날짜 요일
---------------------
1주차 20070501 화요일
1주차 20070502 수요일
1주차 20070503 목요일
1주차 20070504 금요일
1주차 20070505 토요일
2주차 20070507 월요일
2주차 20070508 화요일
2주차 20070509 수요일
2주차 20070510 목요일
2주차 20070511 금요일
2주차 20070512 토요일
///////////////////////////////////////
declare @date char(6)
set @date = '200705'
;with cte_date as
(
select convert(datetime,@date + '01') date,
datepart(dw,convert(datetime,@date + '01')) t
union all
select date + 1,
datepart(dw,date + 1)
from cte_date
where date + 1 < dateadd(m,1,@date + '01')
)
select ltrim(str(datepart(wk,date)-datepart(wk,@date+'01')+1)) + '주차' 주차,
convert(char(8),date,112) 날짜,
datename(dw,date) 요일
from cte_date
where t > 1
/*
주차 날짜 요일
-------------- ---------- ------------------------------
1주차 20070501 화요일
1주차 20070502 수요일
1주차 20070503 목요일
1주차 20070504 금요일
1주차 20070505 토요일
2주차 20070507 월요일
2주차 20070508 화요일
2주차 20070509 수요일
2주차 20070510 목요일
2주차 20070511 금요일
2주차 20070512 토요일
3주차 20070514 월요일
3주차 20070515 화요일
3주차 20070516 수요일
3주차 20070517 목요일
3주차 20070518 금요일
3주차 20070519 토요일
4주차 20070521 월요일
4주차 20070522 화요일
4주차 20070523 수요일
4주차 20070524 목요일
4주차 20070525 금요일
4주차 20070526 토요일
5주차 20070528 월요일
5주차 20070529 화요일
5주차 20070530 수요일
5주차 20070531 목요일
(27개행적용됨)
관련 URL -
http://www.sqlleader.com/mboard.asp?exec=view&strBoardID=SSQUERYQNA&intSeq=1251
'DB > MSSQL' 카테고리의 다른 글
특정 컬럼 전체 SUM (0) | 2017.01.31 |
---|---|
MSSQL 주말 추출 쿼리 (0) | 2017.01.09 |
MySQL auto_increment 기능 MSSQL 에서 사용 (0) | 2016.11.05 |