MySQL如何将SQL语句执行结果导出到Excel

最近有一个需求,就是将数据库中某些数据整理出来制作成Excel表格,看了下数据库中的相关数据有将近六百条,如果手工一个个导出,基本上人也废了。。。
那有没有办法可以将查出来的数据直接导入到Excel中呢?我们可以使用如下SQL语句

select id,nickname,createTime 
from T_MEMBER 
into outfile '/mnt/mysql_bk/xxx.xls'

执行后报错

ERROR 1 (HY000): Can't create/write to file '/mnt/mysql_bk/xxx.xls' (Errcode: 13 - Permission denied)

发现/mnt/mysql_bk没有权限

chmod 777 /mnt/mysql_bk/

重新执行SQL语句,导出后打开Excel文件,发现都是乱码,因为office默认的是gb2312编码,而服务器端生成的很有可能是utf-8编码,所以我们要把查询出来的结果转换为gb2312格式

select id,convert(nickname using gb2312),createTime
from T_MEMBER 
into outfile '/mnt/mysql_bk/xxx.xls'

导出后打开Excel文件,此时数据可以正常显示了

参考:悄悄告诉你,MySQL 通过SQL语句导出到Excel的方法

    原文作者:就没一个昵称能用
    原文地址: https://www.jianshu.com/p/c4ea48bd7c4f
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞