从 mysql 获取输出并存储到 excel 中

从 mysql 获取输出并存储到 excel 中

我在该表下有一个数据库。例如 test_table。在该

  name age sex edu   job    timein              doj
  yyy   33  m   bsc  comp   22/3/13 12:32:44    3/2/11
  xxx   22  f   mca  soft   22/3/13 11:30:11    11/10/09
  zzz   44  f   puc  clerk  22/3/13 12:00:24    5/11/08

命令

 mysql -u root -ppass123  -e "use test_db; select name,age, sex,edu,job,timein,doj from test_table;"

如何转换成 excel

答案1

移动到您稍后想要保存 CSV 文件的目录。然后运行

mysql -u root -ppass123 -e "USE test_db; SELECT * INTO OUTFILE 'testtable.csv' FROM test_table;"

请注意,“SELECT *”会选择所有列,而您列出了所有列。如果您只想选择某些列,则需要再次用列名替换 *,并用逗号分隔。

它将testtable.csv在此目录中生成一个名为的文件,您可以使用它来打开它微软 Excel或者LibreOffice Calc

查看SELECT ... INTO OUTFILE此处的 MySQL 文档以获取更多信息:
http://dev.mysql.com/doc/refman/5.7/en/select-into.html

答案2

另一种方法是将输出直接存储在.xls电子表格中;

这可以通过将 的输出传输mysqlssconvert(在gnumeric包中)来完成,但要求 的ssconvert输入文件是 CSV 或 TSV。

因此,您可以将-B选项添加到mysql命令中(强制mysql输出 TSV)并将mysql命令的输出通过管道传输到ssconvert

mysql -u root -ppass123  -B -e "use test_db; select name,age, sex,edu,job,timein,doj from test_table;" |\
ssconvert fd://0 output_file.xls

相关内容