MAS*_*AS1 3 sql database oracle
我在我的数据库中有一个表说mytable,其中的内容请求来自其他来源.此表中有一列为Time,它在收到请求时存储日期和时间(例如2010/07/10 01:21:43).现在我想每小时从这个表中获取数据.意味着我希望数据库在一天中的每个小时内收到数量.例如,从1点到2点,计数是50 ..像这样..我将在一天结束时运行此查询.所以我会每小时收到一天中收到的请求.
任何人都可以帮助我.
我想要查询,因为我的数据库大小很大,所以需要更少的时间来获取数据.
任何比OMG小马更回答的方式.
使用TO_CHAR函数格式化DATETIME列,因此您可以将GROUP BY用于聚合函数:
SELECT TO_CHAR(t.time, 'YYYY-MM-DD HH24') AS hourly,
COUNT(*) AS numPerHour
FROM YOUR_TABLE t
GROUP BY TO_CHAR(t.time, 'YYYY-MM-DD HH24')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19014 次 |
| 最近记录: |