Oracle SQL - 小时板
Oracle SQL - hour slabs
我有以下数据:
CUSTOMER_ORDERS:
CUST_ORDER_NO CREATE_DATETIME
WEB904204965 17-SEP-21 03.12.45.719000000 PM
WEB904204966 17-SEP-21 03.16.45.719000000 PM
我想查看每小时的订单数量,例如:
COUNT SLAB
2 1-2 PM
4 2-3 PM
如何编写查询?
您可以 trunc
date/time 或仅提取 hour
组件,然后 GROUP BY
该表达式。
这是一个带有样本 SQL 的测试用例:
Working Test Case with a little data
SELECT COUNT(*) AS n
, to_char(dt, 'HH') AS slab
FROM test
GROUP BY to_char(dt, 'HH')
;
结果:
我们可以使用 'HH24' 显示 24 小时值或 'HH AM' 显示 'hours plus AM/PM' 指标。
SELECT to_char(current_date, 'HH24') AS slab FROM dual;
SELECT to_char(current_date, 'HH AM') AS slab FROM dual;
我有以下数据:
CUSTOMER_ORDERS:
CUST_ORDER_NO CREATE_DATETIME
WEB904204965 17-SEP-21 03.12.45.719000000 PM
WEB904204966 17-SEP-21 03.16.45.719000000 PM
我想查看每小时的订单数量,例如:
COUNT SLAB
2 1-2 PM
4 2-3 PM
如何编写查询?
您可以 trunc
date/time 或仅提取 hour
组件,然后 GROUP BY
该表达式。
这是一个带有样本 SQL 的测试用例:
Working Test Case with a little data
SELECT COUNT(*) AS n
, to_char(dt, 'HH') AS slab
FROM test
GROUP BY to_char(dt, 'HH')
;
结果:
我们可以使用 'HH24' 显示 24 小时值或 'HH AM' 显示 'hours plus AM/PM' 指标。
SELECT to_char(current_date, 'HH24') AS slab FROM dual;
SELECT to_char(current_date, 'HH AM') AS slab FROM dual;