SQLAlchemy Core:按命令排序

dav*_*ode 14 python sqlalchemy

在SQLAlchemy核心中使用"ORDER BY foo DESC"执行select语句的正确方法是什么?(核心,不是ORM!)

我目前order_by直接包括方向:

mytable.select(order_by='name DESC')
Run Code Online (Sandbox Code Playgroud)

...它有效(虽然我不喜欢它,因为它有点"hackish"),但SQLAlchemy给了我以下警告:

SAWarning:无法解析标签引用'name DESC'; 转换为text()(10次出现后可能会抑制此警告)
util.ellipses_string(element.element))

(我在doc中没有找到任何相关内容)

Way*_*ner 19

SQLAlchemy文档:

from sqlalchemy import desc

stmt = select([users_table]).order_by(desc(users_table.c.name))
Run Code Online (Sandbox Code Playgroud)

  • 公平地说,由于ORM广受欢迎,因此查找核心文档有些棘手;) (2认同)

aih*_*iho 5

或根据相同的文档链接

stmt = users_table.select().order_by(users_table.c.name.desc())
Run Code Online (Sandbox Code Playgroud)