쿼리로 이번 달의 토/일요일의 수를 구했습니다.
select CEIL ((ADD_MONTHS (YYYYMM, 1) - NEXT_DAY (YYYYMM - 1, 7)) / 7)
+ CEIL ((ADD_MONTHS (YYYYMM, 1) - NEXT_DAY (YYYYMM - 1, 1)) / 7) DT
from (select TRUNC (TO_DATE ('200901', 'YYYYMM')) YYYYMM
from DUAL t
)
근데 여기에서 2009년01월의 특정 기간인 2009-01-05 부터 2009-01-20까지의
토/일요일을 구할려면 어떻게 해야 하나요????
이런식으로 구하면 어떨까요....
SELECT COUNT(*)
FROM (SELECT base_yyyymm + LEVEL - 1 days1,
TO_CHAR(base_yyyymm + LEVEL - 1,'DY') days2
FROM (SELECT TO_DATE ('200901', 'yyyymm') base_yyyymm
FROM DUAL)
CONNECT BY base_yyyymm + LEVEL - 1 <= LAST_DAY (base_yyyymm)) a
WHERE a.days1 BETWEEN '20090105' AND '20090120'
AND a.days2 IN ('토','일')