Code Bye

【关于mysql导出csv文件的问题】

 

当用
select * from ( <%:innersql%> ) temp INTO OUTFILE <%:filepath%> FIELDS TERMINATED BY “”,”” OPTIONALLY ENCLOSED BY “”””” LINES TERMINATED BY “”\n””
导出csv文件时,如果其中字段为空值的时候就会变成\N,如何在导出的时候空值就是空值不是为空呢?
例如导出的数据为1,2,3,,,,,,,5而不是1,2,3,\N,\N,\N,\N,\N,\N,5呢?

有个很烂的办法,用软件打开全部替换一下
我怀疑出问题的原因是Linux下的换行是\n,Windows是\r\n
20分
用case

select case when col1 is null then “””” else col1 end
from tb

引用 2 楼 rucypli 的回复:

用case

select case when col1 is null then “””” else col1 end
from tb

Sqlserver下面用bcp命令导出 csv时,为空的数据直接就是以逗号分隔了,怎么才能加上“”呢?即为空的数据是这样的
“”,””,””,


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明【关于mysql导出csv文件的问题】