Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 如何在输出中将逗号视为文本?_Postgresql - Fatal编程技术网

Postgresql 如何在输出中将逗号视为文本?

Postgresql 如何在输出中将逗号视为文本?,postgresql,Postgresql,有一列包含逗号。当我将查询输出到csv时,这些逗号会破坏csv格式。我一直在做的是避免这是一个简单的问题 替换A.销售代表“,” 有没有更好的方法,这样我就可以在不破坏csv文件的情况下在最终输出中获得逗号 谢谢 将字段引用为 将成为 a,"this has a, in it",b 如果字段同时包含a和a,则双引号: a,this has a " and , in it,b 变成 a,"this has a "" and , in it",b 用引号引用字段 将成为 a,"this has

有一列包含逗号。当我将查询输出到csv时,这些逗号会破坏csv格式。我一直在做的是避免这是一个简单的问题 替换A.销售代表“,”

有没有更好的方法,这样我就可以在不破坏csv文件的情况下在最终输出中获得逗号

谢谢

将字段引用为

将成为

a,"this has a, in it",b
如果字段同时包含a和a,则双引号:

a,this has a " and , in it,b
变成

a,"this has a "" and , in it",b
用引号引用字段

将成为

a,"this has a, in it",b
如果字段同时包含a和a,则双引号:

a,this has a " and , in it,b
变成

a,"this has a "" and , in it",b
您可以使用获取PostgreSQL来为您构建CSV:

复制-在文件和表之间复制数据

类似于其中一个:

copy your_table to 'filename' csv
copy your_table to 'filename' csv force quote *
copy your_table to stdout csv force quote *
copy your_table to stdout csv force quote * header
...
但是,您必须是超级用户才能复制到文件名。如果您在psql中,可以使用:

执行前端客户端复制。这是一个运行SQL COPY命令的操作,但不是服务器读取或写入指定的文件,而是psql读取或写入文件,并在服务器和本地文件系统之间路由数据

语法基本相同:

\copy your_table to 'filename.csv' csv force quote * header
...
您可以使用获取PostgreSQL来为您构建CSV:

复制-在文件和表之间复制数据

类似于其中一个:

copy your_table to 'filename' csv
copy your_table to 'filename' csv force quote *
copy your_table to stdout csv force quote *
copy your_table to stdout csv force quote * header
...
但是,您必须是超级用户才能复制到文件名。如果您在psql中,可以使用:

执行前端客户端复制。这是一个运行SQL COPY命令的操作,但不是服务器读取或写入指定的文件,而是psql读取或写入文件,并在服务器和本地文件系统之间路由数据

语法基本相同:

\copy your_table to 'filename.csv' csv force quote * header
...

+1.完全正确,然后确保导入这些csv文件的任何过程都知道如何正确读取它们。谢谢,但是如果查询类似于从表1中选择销售代表,我如何开始引用字段?不确定postgres是如何进行的。mysql有一个select into outfile选项,允许您指定csv格式/转义选项。如果没有其他内容,您可以在查询中使用字符串替换和连接来引用所有内容。选择“| |字段名| |”等。您要检查文档中的复制命令。可以选择是否输出带有标题的CSV格式,以及复制整个表或查询结果。注意-复制是在服务器端执行的,需要从该点查看路径和权限-有一个运行客户端的psql version\COPY。+1。准确地说,然后确保导入这些csv文件的任何过程都知道如何正确读取它们。谢谢,但是如果查询类似于从表1中选择销售代表,我该如何对字段进行报价?不确定postgres是如何做到的。mysql有一个select into outfile选项,允许您指定csv格式/转义选项。如果没有其他内容,您可以在查询中使用字符串替换和连接来引用所有内容。选择“| |字段名| |”等。您要检查文档中的复制命令。可以选择是否输出带有标题的CSV格式,以及复制整个表或查询结果。注意-复制是在服务器端执行的,需要从该点查看路径和权限-有一个运行客户端的psql version\COPY。