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

如何用PyPika生成带表别名的UNNEST查询语句?

解决PyPika生成带别名的unnest SQL问题

要生成带表别名和列别名的unnest查询,只需在unnest函数调用后添加.as_()方法指定别名即可,修改后的代码如下:

from pypika import PostgreSQLQuery, Array, CustomFunction

unnest = CustomFunction('unnest', ['array'])
# 为unnest结果指定表别名t和列别名x
query = PostgreSQLQuery.from_(
    unnest(Array(1,2,3)).as_('t("x")')
).select('x')

print(query.get_sql())

执行后生成的SQL语句:

SELECT "x" FROM unnest(ARRAY[1,2,3]) AS t("x")

说明

  • .as_('t("x")')直接生成了AS t("x")的别名语法,既指定了表别名t,也为返回的列指定了别名x,满足后续子查询中引用x的需求。
  • 该写法兼容Athena/Presto和PostgreSQL的语法规范。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 04:33:11