使用PostgreSQL在WITH(CTE)中创建

时间:2014-06-16 12:35:27

标签: postgresql

我正在尝试使用PostgreSQL中的函数在WITH中创建临时表。

示例

with mm
as
(
     select * from test
)
create table xyz as select * from mm
;

注意:在创建

附近出错

1 个答案:

答案 0 :(得分:13)

create table xyz as 

with mm
as
(
     select * from test
)
select * from mm 
where myfield = myvalue
;

相关documentation。在文档中,没有关于如何将create table as与CTE一起使用的明确说明。然而,它清楚地说明了它的语法(简化):

CREATE TABLE table_name
    AS query

查询可以是(引用):

  

SELECT,TABLE或VALUES命令,或运行a的EXECUTE命令   准备了SELECT,TABLE或VALUES查询。

从这一点来看,你的尝试失败的原因应该非常清楚。