如何使用postgresql中的select查询动态创建列和行

时间:2014-10-13 07:13:57

标签: sql postgresql

例如,

select 1,2,3 ;

将返回带有 1 行的 3 列,即[1,2,3]
,那么如何使用相同内容的 3 行获取 3 coulmns?

2 个答案:

答案 0 :(得分:1)

嗯,CROSS JOIN非常合适:

SELECT rownum, cols.*
  FROM (SELECT 1,2,3) cols
 CROSS JOIN generate_series(1,10) id(rownum);

如果只需要没有行号的值,则使用SELECT cols.*

答案 1 :(得分:0)

试试UNION,我认为你需要这样的东西

select 1 c1,2 c2,3 c3
     union  all
select 1 ,2 ,3 
     union  all
select 1 ,2 ,3