본문 바로가기
개발 Story/개발관련잡지식

오라클 - 원하는 연도의 원하는 요일 모든 날짜 구하기

by niee 2016. 12. 9.
반응형

쿼리를 오래 안만졌더니 바보가 되서 다까먹었다;

나중에 쓸일이 생길지 모르니 포스팅~


ex)2017년에 속한 모든 금요일 구하기


SELECT A.ALL_DATE

FROM(

SELECT TO_DATE('20170101', 'YYYYMMDD') + (ROWNUM - 1) ALL_DATE

FROM DUAL 

CONNECT BY LEVEL <= 365

)A

WHERE TO_CHAR(A.ALL_DATE, 'D') = '6';


*********************************************


수정)

생각 해보니 윤달이 낄수도 있으니 1년이 365일이 아닐 경우도 생각해서 다시


SELECT A.ALL_DATE

FROM(

SELECT TO_DATE('20170101', 'YYYYMMDD') + (ROWNUM - 1) ALL_DATE

FROM DUAL 

CONNECT BY LEVEL <= (SELECT TRUNC(TO_DATE('20171231','YYYYMMDD') - TO_DATE('20170101','YYYYMMDD'))+1 FROM DUAL)

)A

WHERE TO_CHAR(A.ALL_DATE, 'D') = '6';



반응형