SQL降序炼金术顺序?

2024-04-25 21:30:26 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在如下的SQLAlchemy查询中使用ORDER BY descending

此查询有效,但按升序返回:

query = (model.Session.query(model.Entry)
        .join(model.ClassificationItem)
        .join(model.EnumerationValue)
        .filter_by(id=c.row.id)
        .order_by(model.Entry.amount) # This row :)
        )

如果我尝试:

.order_by(desc(model.Entry.amount))

然后我得到:NameError: global name 'desc' is not defined


Tags: idbymodelsqlalchemyorderqueryamountdesc
3条回答
from sqlalchemy import desc
someselect.order_by(desc(table1.mycol))

来自@jpmc26的Usage

还有一件事你可以做:

.order_by("name desc")

这将导致:ORDER BY name desc。这里的缺点是ORDER BY中使用的显式列名。

正如FYI一样,您还可以将这些内容指定为列属性。例如,我可能已经做到了:

.order_by(model.Entry.amount.desc())

这很方便,因为它避免了import,而且您可以在其他地方使用它,例如在关系定义中等

有关详细信息,您可以refer this

相关问题 更多 >