Has*_*ani 3 sql oracle group-by
我编写了一个查询来获取一天中每小时收到的数据。
SELECT To_CHAR( A.req_start_time , 'DD/MM/YYYY HH24') as input , count(A.REQUEST_ID)
FROM ILBULK.SAS_RE_TASK_MESSAGE A,ILBULK.SAS_RE_REQUEST_MESSAGE
WHERE A.NE_TYPE = 'HLR'
LIKE '%Synchronous%'
AND A.REQUEST_ID = ILBULK.SAS_RE_REQUEST_MESSAGE.REQUEST_ID and A.REQ_START_TIME > to_DATE ('12/26/2014 00', 'MM/DD/YYYY HH24') and A.REQ_START_TIME < to_DATE('12/27/2014 00', 'MM/DD/YYYY HH24')
GROUP BY To_CHAR(A.REQ_START_TIME, 'DD/MM/YYYY HH24');
Run Code Online (Sandbox Code Playgroud)
我收到以下回复
26/12/2014 02 13823
26/12/2014 14 4681
26/12/2014 12 2939
26/12/2014 18 457
26/12/2014 03 34327
26/12/2014 04 15673
26/12/2014 19 28885
26/12/2014 06 70699
26/12/2014 10 10743
Run Code Online (Sandbox Code Playgroud)
现在我想获取按升序排列的每分钟的数据,我尝试分割时间但没有任何效果。我怎么做?
使用to_char(A.req_start_time , 'DD/MM/YYYY HH24:MI'),其中MI是分钟部分。将相同的内容添加到 asSELECT子句中GROUP BY。
SELECT To_char(A.req_start_time, 'DD/MM/YYYY HH24:MI') AS input,
Count(A.request_id)
FROM ilbulk.sas_re_task_message A,
ilbulk.sas_re_request_message
WHERE A.ne_type = 'HLR' LIKE '%Synchronous%'
AND A.request_id = ilbulk.sas_re_request_message.request_id
AND A.req_start_time > To_date ('12/26/2014 00', 'MM/DD/YYYY HH24')
AND A.req_start_time < To_date('12/27/2014 00', 'MM/DD/YYYY HH24')
GROUP BY To_char(A.req_start_time, 'DD/MM/YYYY HH24:MI');
Run Code Online (Sandbox Code Playgroud)
例如,
SQL> SELECT to_char(SYSDATE, 'DD/MM/YYYY HH24:MI') GRP_MIN
2 FROM DUAL
3 GROUP BY to_char(SYSDATE, 'DD/MM/YYYY HH24:MI')
4 /
GRP_MIN
----------------
29/12/2014 11:50
SQL>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16827 次 |
| 最近记录: |