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

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

以下是我现在正在做的:

mysql-u uid-ppwd-D dbname&lt&书信电报;EOQ | sed-e's/,/g'| tee list.csv
选择id、concat(“名称”、“名称”)作为名称
来自学生
EOQ

如果有很多列需要用引号括起来,或者如果结果中有引号需要转义,就会变得很混乱

将MySQL查询结果保存到文本或CSV文件中

选择订单id、产品名称、数量
从命令
其中foo='bar'
输入文件“/var/lib/mysql files/orders.csv”
以“,”结尾的字段
附以“"”号
以“\n”结尾的行;

注意:该语法可能需要重新排序到

选择订单id、产品名称、数量
输入文件“/var/lib/mysql files/orders.csv”
以“,”结尾的字段
附以“"”号
以“\n”结尾的行
从命令
其中foo='bar';

在MySQL的最新版本中

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

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

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

发表评论