sqlalchemy Order By
示例
给定一个基本模型:
class SpreadsheetCells(Base): __tablename__ = 'spreadsheet_cells' id = Column(Integer, primary_key=True) y_index = Column(Integer) x_index = Column(Integer)
您可以通过链接order_by方法来检索有序列表。
query = session.query(SpreadsheetCells).order_by(SpreadsheetCells.y_index)
可以filter,
query = session.query(...).filter(...).order_by(...)
或进一步构成现有查询。
query = session.query(...).filter(...) ordered_query = query.order_by(...)
您还可以通过以下两种方式之一确定排序方向:
访问字段属性asc和dsc:
query.order_by(SpreadsheetCells.y_index.desc()) # desc query.order_by(SpreadsheetCells.y_index.asc()) # asc
使用asc和desc模块功能:
from sqlalchemy import asc, desc query.order_by(desc(SpreadsheetCells.y_index)) # desc query.order_by(asc(SpreadsheetCells.y_index)) # asc