经常遇到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文件。