mysql 统计某一天 24 小时数据 sql 怎么写,如 0, 1, 2, 3...23 统计每个小时的数据。 v 友们给个思路

2017-06-05 22:09:30 +08:00
 liuf

mysql 统计某一天 24 小时数据 sql 怎么写,如 0,1,2,3...23 统计每个小时的数据。v 友们给个思路

5607 次点击
所在节点    MySQL
13 条回复
janezhang
2017-06-05 22:11:35 +08:00
时间点,还是时间段?
qk3z
2017-06-05 22:23:20 +08:00
难道不是写存储过程么
chenqh
2017-06-05 22:26:58 +08:00
crontab 吧,每一小时的执行一次,要支持 insert and update 两种功能
zeraba
2017-06-05 22:30:51 +08:00
DATE_FORMAT 到小时后 group by
phoenixlzx
2017-06-05 22:33:55 +08:00
时间系列的数据建议用 InfluxDB。
iyaozhen
2017-06-05 22:51:21 +08:00
4 楼是常见做法,数据不大性能也还行
qiukong
2017-06-05 23:02:04 +08:00
并没有没看懂题目描述……
一般来说记录事件一类的,就按时间戳创建数据行,然后加索引。
统计显示页,按时间戳 BETWEEN 提取,然后显示?
zhx1991
2017-06-05 23:24:15 +08:00
我理解的是每个小时数据能汇总成一个想看的数据

这样能想到简单的做法就是在时间上建索引, 弄个定时任务, 每个小时过去以后, 把过去一小时的数据跑一遍

如果数据量较大(比如一小时能产生上百万条的数据), 实时计算不太可行的话只能离线跑数了
zhx1991
2017-06-05 23:28:01 +08:00
另外讲一句, 这种问题只简单描述问题不描述场景几乎没法答

至少也要有数据量, 使用场景等等信息才行
hand515
2017-06-05 23:39:13 +08:00
不考虑性能的话 date_format 然后 groupby
ylsc633
2017-06-06 00:01:06 +08:00
类似于 每小时注册数?

因为考虑到 可能要比较某天 某个相同时刻数据进行比较..

最好的方式 就是 弄个脚本,每小时跑一次... 专门存个表...

比如 09 点 跑 08 点的数据呗... 按照 相同小时..

数据量比较小,可以不考虑...
jianzhiyao020
2017-06-06 09:41:35 +08:00
数据冗余做法,
专门多一个字段(int),
格式为:YmdH(如:2014010212),
建索引,
查询效率杠杠的。
linus3389
2017-06-06 10:00:24 +08:00
timestamp % 60*60*1000

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/366172

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX