在时间单位是任意的情况下,如何根据每单位时间的时间戳列来统计MySQL表中的记录数?
具体地说,我想要计算在给定的时间间隔内,有多少记录的时间戳落入15分钟的存储桶中。我了解如何使用MySQL日期函数在1秒、1分钟、1小时、1天等的存储桶中执行此操作,例如
SELECT YEAR(datefield) Y, MONTH(datefield) M, DAY(datefield) D, COUNT(*) Cnt FROM mytable GROUP BY YEAR(datefield), MONTH(datefield), DAY(datefield)
但是我怎么能按15分钟的时段分组呢?
我有一个表,它有一个列叫做分数,另一个列叫做date_time。
我试图找出每5分钟的时间增量,有多少我有超过一定的分数。我想完全忽略日期部分,而只是基于这个时间。
这有点像在一个统计程序,他们显示你的高峰时间,唯一的区别,我想要去的是详细的5分钟的时间段。
我在MySQL还是个新手,谷歌似乎是我最好的伙伴。
到目前为止,我发现:
SELECT id, score, date_time, COUNT(id)
FROM data
WHERE score >= 500
GROUP BY TIME(date_time) DIV 300;
这是可行的,还是有更好的方法来做到这一点。
我正在使用application构建睡眠分析应用程序,并希望检索夜间睡眠统计数据( REM中的时间、深度、光线等)。苹果开发者的视频提供了以下代码来检索所有睡眠阶段的样本.
let stagePredicate = HKCategoryValueSleepAnalysis.predicateForSamples(equalTo: .allAsleepValues)
let queryPredicate = HKSamplePredicate.sample(type: HKCategoryType(.sleepAnalysis), predicate: stagePredicate)
let
我对MySQL有个问题。我需要两个特定时间之间来自MySQL的数据的平均值。
为此,我使用:
select avg(Column)
from Databasename.tablename
where datetime BETWEEN '2012-09-08 00:00:00' AND '2012-09-08 15:30:00'
现在,我需要的是给定时间内每5分钟的平均数据。通过使用此命令:
select avg(Column)
from Databasename.Tablename
where datetime BETWEEN '2012-09-