2011-10-15 25 views
0

我正在使用SELECT INTO OUTFILE将数据库中的行提取到CSV中。MYSQL直接导出为CSV,Excel将格式化的值显示为#######,并将空值显示为 N

我有几个问题,我正试图处理。

第一个是,我格式化货币值的格式为“$ 135,300.00”

当我在Excel中打开CSV,它显示了所有货币字段为“########”,直到他们点击。

此外,空值插入为“\ N”,我希望他们只是空的。

感谢您提供的任何帮助。

+0

我的日期字段也在做同样的事情......形成“2011-10-19”最终会变成“2011年10月19日”,但最初显示为“#######” – christian

回答

0

####东西是一个Excel功能。当单元太小而不能显示全部数字时,它显示任何值。只需增加列宽,直到单元足够大。

对于\n东西,reference

如果ESCAPED BY字符的字段是空的,没有字符被转义,并且NULL被作为NULL输出,而不是\ n。

因此,您可能在查询中使用了FIELDS ESCAPED BY。它有助于查看您正在使用的完整查询。

+0

谢谢!如果值中包含外壳字符等,删除ESCAPED BY子句会导致问题吗? – christian

+0

我知道它返回NULL,但如果我更喜欢空值只是为空? – christian

+1

你可以做'SELECT IFNULL(field,“)FROM ...' – JJJ