오라클 특정기간 주수 질문드립니다 0 6 1,917

by 일곱난장이 [Oracle 기초] 주수 주차 [2022.12.05 16:05:21]


안녕하세요

특정기간(2022.10.15 ~ 2023.09.30), 매월 첫주, 둘째주 화요일 날짜를 구하고 싶습니다

매월의 첫주 기준은 일요일(예, 2022.10월의 첫주는 2022.09.25일) 입니다

부탁드립니다

by 마농 [2022.12.05 16:23:39]

위에 표시된 검색기간(2022.10.15 ~ 2023.09.30)을 기준으로 결과가 어떻게 나와야 하나요?
원하는 결과표를 보여주세요.


by 일곱난장이 [2022.12.13 17:02:08]
2022/10/01 ~ 2022/12/31 , 2/4째주 월요일 조건
10월 03일
10월 17일
11월 07일
11월 21일
12월 05일

12월 19일

 

이렇게 나와야 합니다

감사합니다~~


by 마농 [2022.12.14 08:32:29]

원질문과 기간도 다르고, 요일도 다르고, 주차도 다르네요?
요일이나 주차가 그때 그때 다르나요?
1주차나 6주차(또는 5주차)의 경우는 서로 겹치는 부분이 있는데요?
10/31 은 10월 6주차 일까요? 11월1주차 일까요?
원질문을 예를 들면 10월 첫주 화요일은? 몇일인가요?
9/26 인가요? 아니면 첫주 화요일은 없는 건가요?


by 일곱난장이 [2022.12.14 11:11:05]

조회 값은 매번 달라집니다

예시로 보여드린 조건 및 결과도 수정 했습니다

월별 기준으로 보면, 
10/31은 10월의 6주차, 11월1은 11월의 1주차 입니다
10월 첫주 1일 토요일 입니다
10월 첫주 화요일은 없습니다

감사합니다


by 마농 [2022.12.14 14:07:04]
SELECT dt
  FROM (SELECT s + LEVEL - 1 dt
             , TRUNC(TRUNC(s + LEVEL - 1, 'mm'), 'd') sdt
          FROM (SELECT TO_DATE('20221001', 'yyyymmdd') s
                     , TO_DATE('20221231', 'yyyymmdd') e
                  FROM dual
                )
         CONNECT BY LEVEL <= e - s + 1
        )
 WHERE CEIL((dt - sdt) / 7) IN (2, 4, 6)  -- 주차
   AND TO_CHAR(dt, 'd') = 2               -- 요일
;

 


by 일곱난장이 [2022.12.14 15:54:33]

역시 명불허전 이시네요....매번 너무 감사드립니다~~~

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입