欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

关于SQL导出CSV文件逗号分隔符的问题

程序员文章站 2022-04-24 15:03:07
...
CSV文件一般以“,”为分隔符,但是现在数据库里面有内容很多都包含逗号,请问这种情况应该怎么处理呢?

回复讨论(解决方案)

还有请问这个语句报错,$rs['group_concat( concat_ws(' X ', `sku` , `quantity-purchased` ) )']有问题,应该是那个' X '的问题,请问该怎么处理

echo $rs['ship-postal-code'].",".$address.",".$rs['recipient-name'].",".$rs['ship-city'].",".$rs['ship-state'].",".$rs['buyer-phone-number'].",".$rs['group_concat( concat_ws(' X ', `sku` , `quantity-purchased` ) )']."\r\n";

CSV文件一般以“,”为分隔符,但是现在数据库里面有内容很多都包含逗号,请问这种情况应该怎么处理呢? 按CSV文件的格式说明,当内容中包含逗号是该内容应以双引号括起,当内容中包含双引号时,应将双引号变成两个双引号,当然整个内容用双引号括起
一般的,字符类型的内容都应放在双引号中
并且,php5.3以后的fgetcsv不能是识别不在双引号中的中文

还有请问这个语句报错,$rs['group_concat( concat_ws(' X ', `sku` , `quantity-purchased` ) )']有问题,应该是那个' X '的问题,请问该怎么处理

PHP code

echo $rs['ship-postal-code'].",".$address.",".$rs['recipient-name'].",".$rs['s……
$rs['group_concat( concat_ws(' X ', `sku` , `quantity-purchased` ) )']
单引号中有单引号,不出错才怪呢

xuzuning大大,

一。这个有问题的语句加转义字符还是加双引号呢?

二。这个语句就是把数据库的内容写到CSV文件里面,那我应该怎么做呢??

三。我从亚麻逊导出来的是txt文件,请问CSV文件和TXT文件哪个不容易出现分隔符所造成的问题呢??

标准的 csv 是这样的
"abcd","a""",123
三列的值分别是 abcd、a"、123

通常在不发生歧义时可省略双引号
aaa,bb,cccc

但如果有中文
aaa,汉字,123
这样php5.3只能读出1、3列的内容,第2列为空

你只要注意到这些事实,是用什么工具都无所谓的
工具既然成为工具,自然有它可取之处

$rs['group_concat( concat_ws(' X ', `sku` , `quantity-purchased` ) )']

请问这个语句应该怎么样改??我怎么改都读不到数据

$rs[ "group_concat( concat_ws(' X ', `sku` , `quantity-purchased` ) ) "]

在导出文件的时候,一般最下边可以选择“列分隔符(C)”的,可以选择“制表符分隔”,不过还是需要注意文档中的",出现"符号时会出现分隔符无效的现象。