当前位置: 首页 > 面试题库 >

如何以CSV格式输出MySQL查询结果?

乐正德华
2023-03-14
问题内容

有没有一种简单的方法可以从Linux命令行运行MySQL查询并以CSV格式输出结果?

这是我现在正在做的事情:

mysql -u uid -ppwd -D dbname << EOQ | sed -e 's/        /,/g' | tee list.csv
select id, concat("\"",name,"\"") as name
from students
EOQ

当有很多列需​​要用引号引起来时,或者结果中有引号需要转义时,它将变得混乱。


问题答案:

从http://www.tech-recipes.com/rx/1475/save-mysql-query-results-into-a-text-or-
csv-file/

SELECT order_id,product_name,qty
FROM orders
WHERE foo = 'bar'
INTO OUTFILE '/var/lib/mysql-files/orders.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';

使用此命令,列名将不会导出。

还要注意,/var/lib/mysql-files/orders.csv它将在运行MySQL 的 服务器
上。运行MySQL进程的用户必须具有写入所选目录的权限,否则该命令将失败。

如果要从远程服务器(尤其是托管或虚拟化的计算机,例如Heroku或Amazon RDS)将输出写入本地计算机,则此解决方案不适合。



 类似资料:
  • 我需要以.csv格式输出我的hadoop结果。我要怎么做?我的代码:https://github.com/studhadoop/xml/blob/master/xmlparser11.java 我是否应该简单地在代码中包含csvoutputFormat。我正在使用mapreduce API MyJob.sh 解决方案

  • 问题内容: 我正在处理ETL,并且在SSIS包中的SQL任务中具有以下sql代码。这就是我编码的方式。我正在从表中选择数据,并将该查询的结果作为文件。我希望此附件以CSV格式发送。我该怎么做? 任何帮助将不胜感激。提前致谢。 问题答案: 添加应该可以解决问题。 添加可能会稍微清除结果。所有的论点都可以在这里找到

  • 问题内容: 我需要以.csv格式输出hadoop结果。我该怎么做?我的代码:https : //github.com/studhadoop/xml/blob/master/XmlParser11.java 我应该在我的代码中简单地包含csvoutputFormat吗?我正在使用mapreduce API myjob.sh 解 是的,我不见了>在猫里 问题答案: 您可以使用TextOutputFor

  • 哪种方法是以CSV格式导出JPA查询结果的最佳方法?我试过opencsv,但它需要一个java.sql.ResultSet对象,我不明白如何创建它。我尝试了以下代码 但我收到异常java.lang.ClassCastException:java.util.Vector不能强制转换为java.sql.ResultSet

  • 我用java查询弹性搜索我想把我的查询数据导出到csv文件我为此感到头疼。。。。请任何人能帮我处理这段代码吗?。。下面是我的java查询代码 查询的输出是这样的 "桶":[{"key":"1741433 "," doc_count":1},{"key":"1741435 "," doc_count":1},{"key":"1741436 "," doc_count":1},{"key":"1741