如何在postgresql中选择多行?

use*_*882 4 sql postgresql select resultset

我可以给出一个由单个值组成的结果集,例如1,如下所示:

SELECT 1 as column;
Run Code Online (Sandbox Code Playgroud)

它给了我结果集:

column
------
  1
Run Code Online (Sandbox Code Playgroud)

但是我有一个表示为字符串的此类值的列表,(1, 4, 7, ...)我需要生成以下结果集:

column
------
  1
  4
  7
  .
  .
  .
Run Code Online (Sandbox Code Playgroud)

我试过了,SELECT * FROM (1, 4, 7)但没有用。我也尝试过,SELECT 1, 4, 7但它产生以下结果集:

col1   col2    col3
 1       4      7
Run Code Online (Sandbox Code Playgroud)

这不是我想要的。

a_h*_*ame 5

如果这些是常量值,则可以使用以下values子句:

select * 
from (
   values (1), (4), (7)
) as t(id);
Run Code Online (Sandbox Code Playgroud)

如果您的值在字符串文字内,则可以使用以下命令:

select *
from unnest(string_to_array('1,2,3,4', ',')) as id;
Run Code Online (Sandbox Code Playgroud)