这个问题在这里已经有了答案:
memory-efficient built-in SqlAlchemy iterator/generator?
(6 个回答)
2年前关闭。
我需要从一个大表的所有行中读取数据,但我不想一次将所有数据拉入内存。是否有处理分页的 SQLAlchemy 函数?也就是说,将几行拉入内存,然后在必要时获取更多行。
我知道您可以使用 limit
来做到这一点和 offset
如 this article建议,但如果我不需要,我宁愿不处理。
最佳答案
如果您使用 Flask-SqlAlchemy,请参阅 paginate query
的方法. paginate
提供了几种简化分页的方法。
record_query = Record.query.paginate(page, per_page, False)
total = record_query.total
record_items = record_query.items
首页应该是 1 否则
.total
返回异常除以零
关于pagination - SQLAlchemy 并通过一个大的结果集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9916094/