sqlalchemy: 从表中获取最大/最小/平均值
我有一个查询:
mps = (
session.query(mps) .filter_by(idc = int(c.idc))
.filter_by(idmp = int(m.idmp))
.group_by(func.day(mps.tschecked))
).all()
我的问题是,我不知道怎么用sqlalchemy从一个表里提取最大值、最小值和平均值……
我找到了这个:在SQLAlchemy中独立于数据库的MAX()函数
但是我不知道该在哪里使用这个func.max/min/avg……
有人能告诉我怎么做吗?能给我一个例子吗?
2 个回答
-21
或者直接用 order_by() 方法,然后选择第一个或最后一个元素……
56
以下是可以通过 from sqlalchemy import func
使用的函数:
func.min
- 用来找出最小值func.max
- 用来找出最大值func.avg
- 用来计算平均值
你可以在 这里 查看相关文档。
你可以在查询方法 query()
中使用这些函数。
示例:
session.query(self.stats.c.ID, func.max(self.stats.c.STA_DATE))
(就像在普通的 SQL 中使用聚合函数一样)