【发布时间】:2016-02-22 22:14:17
【问题描述】:
我有一堆记录,我想计算特定时间单位(小时、天、周)内的平均计数。因此,一种情况是我想计算给定范围内我每天拥有的平均记录数。更清楚地说,这只是一个数字。
我现在正在做的方式(显然不起作用,因为它没有取平均值)是以下 sqlalchemy 查询:
db.query(MyClass).filter(MyClass.created.between(start_date, end_date)).group_by(func.HOUR(MyClass.created)).count()
这是SHOW CREATE TABLE yt_video的输出:
| yt_video | CREATE TABLE `yt_video` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`version` int(11) DEFAULT NULL,
`created` datetime DEFAULT NULL,
`published_date` date DEFAULT NULL,
`yt_data` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
我真正关心的是创建的时间戳,但希望这会有所帮助。
【问题讨论】:
-
请提供示例数据和表架构。
-
您可以使用 numpy.average 或者您可以获取结果,将所有值相加并除以值的计数。
标签: python mysql sql sqlalchemy