我正在尝试使用mysql将查询结果写入文件。我在一些地方看到了关于outfile结构的一些信息,但似乎只将文件写入运行MySQL的机器(在本例中是一台远程机器,即数据库不在我的本地机器上)。
或者,我还尝试运行查询并从mysql工作台结果窗口中抓取(复制/粘贴)结果。这对一些较小的数据集有效,但最大的数据集似乎太大,并导致内存溢出异常/错误/崩溃。
在这件事上的任何帮助都将非常感谢。
发布于 2011-06-13 16:10:20
您可以尝试从本地cli执行查询,并将输出重定向到本地文件目标;
mysql -user -pass -e"select cols from table where cols not null" > /tmp/output
发布于 2011-06-13 16:12:11
这取决于您用来与数据库交互的SQL客户端。例如,您可以将mysql命令行界面与"tee“运算符结合使用,以输出到本地文件:
http://dev.mysql.com/doc/refman/5.1/en/mysql-commands.html
tee [file_name], \T [file_name]
在执行SQL之前执行上面的命令,查询结果将输出到文件中。
这里有一篇关于Execute Query to Text Output的文章,专门针对MySQL工作台。虽然我没有看到任何文档,但有迹象表明Query下也应该有一个"Export“选项,尽管这几乎可以肯定是依赖于版本的。
发布于 2015-07-24 01:15:48
如果您想在一个文件中编写MySQL查询结果,您可以尝试这样做。
此示例将MySQL查询结果写入逗号分隔格式的csv
文件
SELECT id,name,email FROM customers
INTO OUTFILE '/tmp/customers.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
https://stackoverflow.com/questions/6332994
复制