그룹화 날짜별로 내 테이블에서 합계를 얻고 있습니다. 예를 들어, 내가 '08 .03.2013 '과 '22 .03.2013'사이의 값을 얻으려고 할 때 그림 아래를 보면. 18.03.2013 및 20.03.2013에 대한 데이터가 없습니다.며칠간 데이터가없는 테이블에서 두 날짜 사이의 값을 가져 오는 방법
프런트 엔드에서 하이 차트를 사용하고 있기 때문에 프런트 엔드에서이 날짜를 처리하지 않으려 고합니다.
의견이 있으십니까?
감사합니다 [@art에 대한 편집]
SELECT TO_CHAR(CR_DATE, 'DD') DAY, TO_CHAR(CR_DATE, 'MM') MONTH, TO_CHAR(CR_DATE, 'YY') YEAR,
count(STAB_ID) AS total FROM paytrans
WHERE acct_id = 1552 AND status = 'DND_FNSH' and CR_DATE > '08.03.2013' AND CR_DATE < '22.03.2013'
GROUP BY TO_CHAR(CR_DATE, 'YY'), TO_CHAR(CR_DATE, 'DD'), TO_CHAR(CR_DATE, 'MM')
ORDER BY year, month, day
SELECT TO_CHAR(CR_DATE-1, 'DD') + LEVEL DAY, TO_CHAR(CR_DATE, 'MM') MONTH, TO_CHAR(CR_DATE, 'YY') YEAR,(cr_date-1) + LEVEL AS cr_date
FROM
(
SELECT
To_Date('08.05.2013', 'DD.MM.YYYY') end_date,
To_Date('08.04.2013', 'DD.MM.YYYY') cr_date
FROM dual
)
CONNECT BY LEVEL <= (end_date - cr_date)+1
이 [일정]을 확인 (http://www.perpendulum.com/2012/06/calendar-table-script-for-oracle/) 테이블 그리고 그것에 합류했습니다. –