2013-07-11 133 views
1

我需要打印的表列了在Postgres的一個文本文件,只是一個簡單的SELECT「欄位」 FROM「表」。我很確定有一種方法可以做到這一點,但我不記得語法。誰能幫忙?在postgreSQL中將輸出寫入文件?

回答

3

使用COPY

如果需要拷貝整個表,你可以指定一個表名:

COPY country TO '/usr1/proj/bray/sql/country_data'; 

您還可以複製一個查詢結果:

COPY (SELECT column_name FROM country WHERE country_name LIKE 'A%') 
TO '/usr1/proj/bray/sql/a_list_countries.copy'; 

同樣的語法可以被用來導入表:

COPY country FROM '/usr1/proj/bray/sql/country_data'; 

它可以指定其他選項,例如分隔符,格式等。在我的日常工作中,我經常使用:

COPY country TO '/usr1/proj/bray/sql/country_data' DELIMITER ',' CSV; 

COPY語句的完整說明,請參見上面的鏈接文檔頁面。