Flask-SQLALchemy对表中数据按时间进行统计

例如表的结构如下:

class Status(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    submit_time = db.Column(db.DateTime, default=datetime.now())其中,Status表接受用户的提交,现在想对用户的提交情况按时间进行统计。例如过去24小时,每小时的提交次数;过去12个月,每个月的提交次数。
python代码实现查询如下:from datetime import datetime, timedelta

NOW = datetime.utcnow()
last_24h_submits_count = []
for h in xrange(1,25):
    count = session.query(Status).filter(Status.submit_time.between(NOW - timedelta(seconds=h*3600-1), NOW - timedelta(hours=h-1))).count()
    last_24h_submits_count.append(count)

猜你喜欢

转载自blog.csdn.net/uuihoo/article/details/79444603