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

PostgreSQL中vi.*的作用是什么?省略AS定义别名是否为通用做法?

问题解答

1. vi.* 的作用

vi 是表 vistas_por_jose 的别名,vi.* 表示选中该别名对应表的所有列。
在你的查询里,它会把 vistas_por_jose 表的每一列都包含在查询结果中,再加上后面通过 coalesce(ordenes, 0) 生成的列,共同组成最终的结果集。

2. 省略 AS 定义表别名是否属于通用做法

这完全是通用且合法的做法:

  • SQL 标准允许直接在表名后跟上别名,无需 AS 关键字,PostgreSQL 自然支持这种写法。
  • 不仅是 PostgreSQL,像 MySQL、SQL Server、Oracle 等主流关系型数据库,都支持省略 AS 来定义表别名。
  • 当然你也可以加上 AS(比如 from vistas_por_jose AS vi),两种写法功能完全一致,只是个人编码习惯的差异。

原查询代码

select vi.* , coalesce(ordenes, 0)
 from vistas_por_jose vi
 left join ventas ve
 on vi.store_id = ve.store_id

内容的提问来源于stack exchange,提问作者Juan Jose Vargas Estevez

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 18:20:26