SQLAlchemy 1.4使用AsyncSession,Postgres后端,Python3.6
我正在尝试使用SQLAlchemy ORM创建一个自定义聚合函数。SQL查询看起来如下所示:
COUNT({group_by_function}),{group_by_function} AS {aggregated_field_name)}我一直在找这方面的信息。
我知道这可以首先在Postgres db内部创建,然后由SA使用,但是这对于我正在使用的代码库的设置方式来说是有问题的。
我知道SQLAlchemy-Utils在这方面有功能,但我不喜欢使用外部库。
关于这个主题,我能找到的最直接的帖子是:“新聚合函数的创建依赖于后端,必须直接使用下划线连接的API完成。”但这是几年前的事了,并认为可能会有更新。
我是在SA ORM文档中遗漏了一些讨论这个问题的内容,还是SA不支持它呢?
发布于 2021-12-09 15:24:23
您可以尝试这个查询。
query = db.session.query(Model)\
.with_entities(
Model.id,
func.sum(Model.number).label('total_sum')
).group_by(Model.id)https://stackoverflow.com/questions/70266758
复制相似问题