经常遇到MYSQL导出长数字或纯数字字符串(如身份证、卡券号、条码、流水号等)到csv或excel文件,用excel打开会显示为科学记数法,甚至后几位转为0。这是由Excel的特性决定的:Excel显示11位以上的数字时,会自动转化为科学计数法,如果长度大于15位,15位以后数字还会转成0。
1、CONCAT("\t",str)
如果只是展示、打印倒无妨,但如果需要后续引用该字符串(如用VLOOKUP匹配),因为前面多了一个不可见的空格,长度也多了一位,则可能会出错。

2、CONCAT("’",str)、CONCAT("’",str)
1.如果只需要导出展示、打印:可使用CONCAT("\t",str)
2.如果需要后续处理,引用,最好使用CONCAT("’",str)或者CONCAT("’",str),并导出为EXCEL文件。


本文介绍如何在从MySQL导出长数字或纯数字字符串(如身份证、卡券号等)到csv或excel文件时,避免Excel将其转换为科学记数法或截断的问题。提供了两种解决方案:一是使用CONCAT(' ',str)仅用于展示;二是使用CONCAT('’',str)适用于后续数据处理。
921

被折叠的 条评论
为什么被折叠?



