在 MySql 中,如何将 csv 文件中的 sql 字符串中的空值导出为双引号(“”)?

Posted

技术标签:

【中文标题】在 MySql 中,如何将 csv 文件中的 sql 字符串中的空值导出为双引号(“”)?【英文标题】:In MySql how do I export null values from an sql string in a csv file as double quotes ("")? 【发布时间】:2018-08-30 06:19:27 【问题描述】:

我会尽量保持简短和重点。

我的目标是使用 phpMyAdmin 导出按钮将数据导出到 CSV 文件中。 数据库字段中的一些数据是空的,我希望这些空(null)字段在 CSV 文件中显示为“”(双引号)。

我已经尝试使用 CASE WHEN 命令,但我仍然没有收到数据之间的任何内容。这是我使用的 SQL 代码。

 SELECT 
   CASE WHEN gift_message is null 
   THEN "\"\"" 
   ELSE gift_message 
   END 
 FROM `th_orders` 
 WHERE perfect_processed = 0;

这只是将空值返回到 csv 文件中,而不是我想要的“”。 非常感谢任何帮助。

【问题讨论】:

显然,如果我使用“=”而不是“is null”,它似乎可以工作! 阅读此dev.mysql.com/doc/refman/5.7/en/working-with-null.html 这里在空字符串和 NULL 之间存在一些混淆。如果您正在测试 NULL,则查询实际上没有任何问题,但是数据由空字符串组成,而不是您的问题所暗示的 NULL,因此当 IS NULL 没有时,空字符串测试有效。 【参考方案1】:

在mysql中你可以使用ifnull()函数和''

  SELECT 
     IFNULL(gift_message, '') 
   FROM `th_orders` 
   WHERE perfect_processed = 0;

【讨论】:

以上是关于在 MySql 中,如何将 csv 文件中的 sql 字符串中的空值导出为双引号(“”)?的主要内容,如果未能解决你的问题,请参考以下文章

如何将csv导入mysql和mysql导出csv

如何将 JSON,Text,XML,CSV 数据文件导入 MySQL

如何将包含 200,00 行的巨大 CSV 文件导入 MySQL(异步且快速)?

将 CSV 文件加载到 MySQL Workbench

如何将 JSON, Text, XML, CSV 数据文件导入 MySQL

自动将 csv 文件插入 mysql 表