【发布时间】:2021-04-15 09:36:22
【问题描述】:
假设我想获取给定表的行并在同一个查询中获取它们的总数。这如何在 SQLAlchemy 中完成?
我试过了:
session.query(Model, func.count(Model.id)).all()
但似乎只有一条记录加载到 Python 中,即使 count 为 11。
提前谢谢你!
【问题讨论】:
标签: python sql sqlalchemy flask-sqlalchemy
假设我想获取给定表的行并在同一个查询中获取它们的总数。这如何在 SQLAlchemy 中完成?
我试过了:
session.query(Model, func.count(Model.id)).all()
但似乎只有一条记录加载到 Python 中,即使 count 为 11。
提前谢谢你!
【问题讨论】:
标签: python sql sqlalchemy flask-sqlalchemy
与查找列表长度的方法相同:
rows = session.query(Model).all()
number_of_rows = len(rows)
【讨论】:
session.query(Model).count() 效率更高,因为它在数据库端计算计数
.all(),一次使用.count()。或者只是 len() 已经获取并在内存中的那个。