SELECT T_DATE, NVL(T_CNT,0)
FROM
(
SELECT '201103'||TRIM(TO_CHAR(LEVEL,'00')) AS T_DATE
FROM DUAL
CONNECT BY LEVEL<=TO_NUMBER(TO_CHAR(LAST_DAY(TO_DATE('20110301','YYYYMMDD')),'DD'))
),
(
SELECT ENTR_DATE, COUNT(*) AS T_CNT
FROM TB_FT_INTR_GOLF_USE
WHERE USE_STATUS_CODE IN ('CI','CO')
AND SUBSTR(ENTR_DATE,1,6)='201103'
GROUP BY ENTR_DATE
)
WHERE T_DATE=ENTR_DATE(+)
ORDER BY T_DATE
이 쿼리문은 2011년03월의 1일부터 31일까지의 인원수를 구하는 쿼리문입니다.
여기서 제가 알고자 하는 것은 제가 변수로 받아온 '연월'(예를 들어 201102)을 받아오게 되면
DUAL부분에 조회되는 '201103'에 대한 부분과 CONNECT BY에 '201103'을 모두 '201102'로 바꿔주어야
하는데 그 부분을 어떻게 바꾸어야 할지 모르겠습니다;;
받아온 변수를 바로 넣을 수 있는 방법이 있는건지 아니면 다른 방법이 있는건지
상세히 알려주셨으면 감사하겠습니다