1、使用extract 查询时间
如:按照天统计日志数量
_query= db.session.query(extract('day', Log.created_at).label('day'), func.count('*').label('count')).group_by('day').all()
按照天统计钱数。每天汇总求和
_query= db.session.query(extract('day', Log.created_at).label('day'),func.sum(Log.money).label('count')).group_by('day').all()
增加条件
_query= db.session.query(extract('day', Log.created_at).label('day'), func.count('*').label('count')).filter(extract('day', Log.created_at) == 21,extract('year', Log.created_at) == 2020).group_by( 'day').all()
再一个列子
按照季度过滤。
x轴 时间(%Y-%m-%d)
y周 数量
_query = db.session.query(func.date_format(Log.created_at, "%Y-%m-%d").label('day'),
func.count('*').label('count')).filter( extract('quarter', Log.created_at) == quarter, extract('year', Log.created_at) == year).group_by('day').all()