MySQL将sql语句查询后的数据导出成excel表格

MySQLsql语句查询后的数据导出成excel表格

    第一步:将对应的查询结果加写入对应的路径

SELECT * from 表名 where 查询条件into outfile '/usr/local/mysql/1.sql';

    可能会出现的问题:The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

    出现的原因是因为在安装MySQL的时候限制了导入与导出的目录权限只能在规定的目录下才能导入我们需要通过下面命令查看 secure-file-priv 当前的值是什么

    通过 mysql –u数据库用户名 –p数据库密码 进入mysql命令行

    输入show variables like '%secure%';

      MySQL将sql语句查询后的数据导出成excel表格

我们可以查看到 secure-file-priv 为空 将这个值修改成我们要导出的路径即可。

    修改方法:mysql的安装路径下找到(windows系统)my.ini linux系统则为my.cnf,在mysqld 下面添加或修改secure-file-priv = 文件导出路径

MySQL将sql语句查询后的数据导出成excel表格

 

修改后查看当前值登录mysql命令行再输入show variables like '%secure%';就可以看到secure-file-priv 的值已经被修改了

 

MySQL将sql语句查询后的数据导出成excel表格

这时候重启mysql服务并重新执行第一步的语句 即可成功,若出现

Can't create/write to file (Errcode: 13 - Permission denied)错误

则是因为对应路径的文件夹权限不够 改变文件夹权限即可 这里以linux为例

    MySQL将sql语句查询后的数据导出成excel表格

修改后再重新执行第一步的语句即可看到我们将查询结果导入到的文件了

MySQL将sql语句查询后的数据导出成excel表格

 

第二步:

进入mysql命令行

将对应查询结果的文件在导入相应的字段的表中输入下面的sql语句

load data local infile "/usr/local/mysql/1.sql " into table 表名character set utf8; 

最后将表导出成excle格式即可