WITH T AS (
SELECT TO_DATE('2016-06-22 00:24:03','YYYY-MM-DD HH24:MI:SS') AS DT , 100 AS NUM FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:10:51','YYYY-MM-DD HH24:MI:SS'), 110 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:19:29','YYYY-MM-DD HH24:MI:SS'), 120 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 130 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 140 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 150 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 200 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 210 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 220 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 230 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 240 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 250 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:42:58','YYYY-MM-DD HH24:MI:SS'), 260 FROM DUAL UNION ALL
SELECT TO_DATE('2016-06-22 00:48:04','YYYY-MM-DD HH24:MI:SS'), 270 FROM DUAL
)
SELECT * FROM T ;
위와 같은 데이터가 있을 때 시간대별로 NUM 필드의 정보를 연산하여 표시하고 싶습니다.
아래와 같이 데이터가 출력이 되면 됩니다.
시간정보 // 그룹핑 기준정보 // 건수
2016-06-22 00 // 1~100 // 1 건
2016-06-22 00 // 101~200 // 6 건
2016-06-22 00 // 201~250 // 5 건
2016-06-22 00 // 251 ~ // 2 건
1~100, 101~200 등과같은 그룹핑 기준정보는 고정입니다.