ITPub博客

首页 > 数据库 > MySQL > 将MYSQL中数据导出到EXCEL表

将MYSQL中数据导出到EXCEL表

原创 MySQL 作者:pathfinder_cui 时间:2015-12-29 23:56:42 0 删除 编辑

如何将MYSQL中数据导出到EXCEL表中?


在网上找了一些方法,请大家参考:
最佳答案 

select * into outfile 'd:/test.xls' from  表名

其他答案:
方法一:进入到mysql的控制台,输入:
1. SELECT * INTO OUTFILE ‘./test.xls‘ FROM tb1 WHERE 1 ORDER BY id DESC  LIMIT 0, 50;
这样,应该会在你的mysql的var/目录下产生一个test.xls的文件。。。
但是如果你的shell的登录帐户和mysql的运行账户不同,很可能这个方法就不适用了,因为你可以通过mysql控制台来产生这个文件,但是你却没有办法通过shell来对这个文件进行操作,因为用户不同,没有访问权限。
这个时候,同事告诉偶滴办法就重装登录了!!!
1. echo "use datebase;SELECT * FROM tb1 WHERE 1 ORDER BY id DESC LIMIT 0, 50;"| /usr/bin/mysql -hlocalhost -uroot -pxxxxx > /tmp/test.xls
ok,把你的test.xls文件从tmp下载到本地打开来看看吧。。。
什么?中文乱码?
别着急。。。
因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,这个时候你有两种选择,
1.在服务器端使用iconv来进行编码转换,
1. iconv -futf8 -tgb2312 -otest2.xls test.xls
如果转换顺利,那么从server上下载下来就可以使用了。
转换如果不顺利,则会提示:iconv: illegal input sequence at position 1841 类似于这样的错误,
先把test.xls下载下来,这个时候文件是utf-8编码的,用excel打开,乱码。
把test.xls以文本方式打开,然后另存为,在编码选择ANSI编码,保存。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29620572/viewspace-1967317/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: MySQL主从复制
请登录后发表评论 登录
全部评论

注册时间:2014-04-21

  • 博文量
    55
  • 访问量
    70873