MySQL查询打印为CSV输出到标准输出
问题描述:
我想要做以下mysql -uuser -ppass -h remote.host.tld database < script.sql
MySQL查询打印为CSV输出到标准输出
其中script.sql
包含以下
SELECT *
FROM webrecord_wr25mfz_20101011_175524
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
我想CSV输出定向到标准输出。原因是因为使用INTO OUTFILE 'blah.csv'
运行此查询将将该文件保存在远程主机上。我想要保存在本地主机上的文件。
如果我可以只是将标准输出重定向到一个文件,这将是花花公子。
答
尝试这种情况:mysql -uuser -ppass -h remote.host.tld database < script.sql 2> blah.csv
这将重定向标准错误
+1
这似乎并没有解决问题,这是如果你不指定OUTFILE你不能使用后续的“FIELDS TERMINATED BY”,所以你实际上得到CSV输出! – Michael 2017-09-21 19:36:24
[用于MySQL命令行结果更改输出格式,以CSV(的可能的复制http://stackoverflow.com/questions/15640287/change-输出格式为MySQL的命令行结果到CSV) – bufh 2016-02-25 07:23:10
不是一个笨蛋,这是一个关于路由到标准输出的问题。 – MichaelD 2017-02-17 21:13:47