본문 바로가기
study/TIP

ORACLE 기간별 통계 : 일간, 주간, 월간

by 휘루걸음 2024. 2. 21.
728x90
반응형

업무상 요청으로 제공한 쿼리의 샘플입니다.

반응형

 

728x90

각 기간별 통계를 제공하였습니다. 일간/주간/월간의 통계를 산출합니다.

주간 쿼리는 주차에 대한 기간정보를 요청에 의해 추가하였습니다.  요부분이 좀 까다로워서 찾아봤네요. 

-- 일간 쿼리
SELECT  '일간' AS div,TO_CHAR(DTM, 'YYYY-MM-DD') AS day
    , COUNT(SEQ) AS cnt 
FROM TBL 
GROUP BY TO_CHAR(DTM, 'YYYY-MM-DD') 
ORDER BY day desc;

 

-- 주간 쿼리
SELECT  '주간' AS div,  TO_CHAR(DTM, 'YYYY-IW') AS year_week
    , COUNT(SEQ) AS CNT
    , TO_CHAR(TRUNC(DTM, 'IW') , 'YYYY-MM-DD') AS START_DATE
    , TO_CHAR(TRUNC(DTM, 'IW') + 6, 'YYYY-MM-DD') AS END_DATE
FROM   TBL
GROUP BY TO_CHAR(DTM, 'YYYY-IW'), TO_CHAR(TRUNC(DTM, 'IW'), 'YYYY-MM-DD'), TO_CHAR(TRUNC(DTM, 'IW') + 6, 'YYYY-MM-DD')
ORDER BY  year_week DESC;

 

-- 월간 쿼리
SELECT  '월간' AS div, TO_CHAR(DTM, 'YYYY-MM') AS year_m,
 COUNT(SEQ) AS CNT
FROM  TBL
GROUP BY TO_CHAR(DTM, 'YYYY-MM')
ORDER BY  year_m DESC;
728x90
반응형