如何从postgresql中的列表返回行表?

时间:2017-01-18 17:18:27

标签: postgresql

我试图在postgresql中给出一个值列表来生成行。例如,如果我有值1, 2, 5, 10, 30, 180,我想返回:

num
----
1
2
5
10
30
180

我一直试图使用VALUES功能,但没有运气。这是一个尝试失败的例子:

SELECT num
FROM
VALUES (1, 2, 5, 10, 30, 180) as num

1 个答案:

答案 0 :(得分:2)

values (1, 2, 5, 10, 30, 180)会返回包含6列的单个行。

但是你想要六列一列:

SELECT num
FROM (
   VALUES (1), (2), (5), (10), (30), (180) 
) as t(num)

as t(num)为派生表(values部分)指定别名,该表名为t,并且只有一列num

使用选择列表中的表别名会返回记录,而不是列。

相关问题