如何在postgresql中选择多行?

如何在postgresql中选择多行?,sql,postgresql,select,resultset,Sql,Postgresql,Select,Resultset,我可以给出一个由单个值组成的结果集,例如1,如下所示: SELECT 1 as column; 它给了我一个结果集: column ------ 1 column ------ 1 4 7 . . . col1 col2 col3 1 4 7 但是我有一个以字符串(1,4,7,…)表示的值列表,我需要生成以下结果集: column ------ 1 column ------ 1 4 7 . .

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

SELECT 1 as column;
它给了我一个结果集:

column
------
  1
column
------
  1
  4
  7
  .
  .
  .
col1   col2    col3
 1       4      7
但是我有一个以字符串
(1,4,7,…)
表示的值列表,我需要生成以下结果集:

column
------
  1
column
------
  1
  4
  7
  .
  .
  .
col1   col2    col3
 1       4      7
我尝试了
SELECT*FROM(1,4,7)
,但没有成功。我还尝试
选择1,4,7
,但它会生成以下结果集:

column
------
  1
column
------
  1
  4
  7
  .
  .
  .
col1   col2    col3
 1       4      7
这不是我想要的。

您可以使用来获得您想要的。但是如果这是sting as
1,4,7
逗号分隔,那么您需要使用
regexp\u split\u To\u table
函数


您可以
unest
将其作为:


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

select * 
from (
   values (1), (4), (7)
) as t(id);
如果您的值位于字符串文字内,则可以使用:

select *
from unnest(string_to_array('1,2,3,4', ',')) as id;

您需要查看
字符串拆分
联合
您的链接是针对SQL Server的。Postgres已经内置了将字符串拆分为数组甚至创建一个表的所有功能。