2012-12-05 65 views
1

是否可以將多個postgresql查詢複製到單個csv文件中? 截至目前正在複製單個查詢到CSV文件我可以將多個postgresql查詢導出到一個csv文件中嗎?

copy (select * from table1) to 'file.csv' with csv header; 

現在我想起來複制2查詢結果。那可能嗎 ?像,

copy (select * from table1,select name from table2) to 'file.csv' with csv header 

任何幫助嗎?

回答

2

您可以:

copy (select 'table1' as table_id, * from table1 
     UNION ALL 
     select 'table2' as table_id, * from table2) 
to 'file.csv' with csv header 

如果表有相同的結構。

或者你可以:

copy (select field1, field2, null, null from table1 
     UNION ALL 
     select null,null, field3, field4 from table2) 
to 'file.csv' with csv header 

如果表不具有相同的結構。

問題是 - COPY ... FROM只能使用表格(詳細信息here)。

所以,你將需要:CREATE TEMP TABLE tmp_copy_tblCOPY tmp_copy_tbl FROM然後INSERT ... SELECT ... FROM tmp_copy_tbl

相關問題