You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Peewee如何选择并别名化字面量列值?

Peewee实现指定SELECT语句的官方推荐方式

针对你要实现的SQL语句,Peewee官方有两种更贴合API设计的推荐方式,比直接使用Alias处理常量值更常用:

1. 使用Value类 + alias方法

Value是Peewee专门用来表示SQL常量值的类,搭配alias方法可以直接指定别名,写法直观且符合官方惯用风格:

from peewee import Value

# 构建查询
query = User.select(User.name, Value('hello').alias('foo'))
# 打印生成的SQL
print(query)

生成的SQL与你需要的完全一致:

SELECT "t1"."name", 'hello' AS "foo" FROM "users" AS "t1"

2. 使用SQL表达式直接编写片段

如果需要更灵活地嵌入原生SQL片段,可以直接使用SQL类,这种方式适合处理复杂常量或自定义SQL逻辑:

from peewee import SQL

# 构建查询
query = User.select(User.name, SQL("'hello' AS foo"))
# 打印生成的SQL
print(query)

同样会生成目标SQL语句。

关于你提到的Alias:它本身是可行的,但Alias的设计初衷更多是为表或子查询设置别名,而非处理常量值,因此官方更推荐上面两种方式。

内容的提问来源于stack exchange,提问作者Matthew Moisen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 12:54:20