首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以取消匿名化值子句吗?

可以取消匿名化值子句吗?
EN

Stack Overflow用户
提问于 2021-11-09 18:36:43
回答 3查看 30关注 0票数 0

假设我有以下内容作为起点:

代码语言:javascript
复制
select * from (values (1,'a'),(2,'b'))

是否可以为上游的值列提供列名,例如:

代码语言:javascript
复制
select
    col1 AS id,
    col2 AS letter
from (
    <anonymous values>
)

还是说,一旦有了匿名values子句,就不能对其命名。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-11-09 18:38:54

您可以使用还指定列名的table alias

代码语言:javascript
复制
select * 
from ( 
  values (1,'a'),(2,'b')
) as v(id, letter);
票数 2
EN

Stack Overflow用户

发布于 2021-11-09 18:38:58

使用别名:

代码语言:javascript
复制
select * from (values (1,'a'),(2,'b')) as foo(id,txt);
 id | txt
----+-----
  1 | a
  2 | b
(2 rows)
票数 1
EN

Stack Overflow用户

发布于 2021-11-09 18:39:01

绝对一点儿没错

只需将列名添加到查询别名

代码语言:javascript
复制
select q.id, q.col
from (values 
 (1,'a'),
 (2,'b')
) q(id, col)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69903389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档