我试图通过命令行导出一个带有标题的PostgreSQL表到CSV文件,但是我把它导出到CSV文件,但没有标题。

我的代码如下:

COPY products_273 to '/tmp/products_199.csv' delimiters',';

当前回答

COPY products_273 TO '/tmp/products_199.csv' WITH (FORMAT CSV, HEADER);

如手册所述。

其他回答

在pgAdmin中,突出显示您的查询语句,就像您使用F5执行并按F9一样-这将打开文件浏览器,以便您可以选择保存CSV的位置。

如果您使用的是Azure Data Studio,说明在这里:Azure Data Studio:另存为CSV。

我知道这不是一个通用的解决方案,但大多数时候您只是想手动获取文件。

这个解决方案为我工作使用\copy。

psql -h <host> -U <user> -d <dbname> -c "\copy <table_name> FROM '<path to csvfile/file.csv>' with (format csv,header true, delimiter ',');"

对于我使用的9.5版本,它是这样的:

COPY products_273 TO '/tmp/products_199.csv' WITH (FORMAT CSV, HEADER);

从psql命令行:

\COPY my_table TO 'filename' CSV HEADER

结尾没有分号。

COPY products_273 TO '/tmp/products_199.csv' WITH (FORMAT CSV, HEADER);

如手册所述。