我有以下代码:
SELECT * INTO OUTFILE'~/TestInput/Results.csv' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' FROM Results;
字符串
所需结果将不断追加到Results.csv
velaa5lx1#
您可以合并结果并立即写入。TEE将记录可能不希望的所有内容。在您的案例中:
SELECT * FROM Results UNION SELECT * FROM Results INTO OUTFILE '~/TestInput/Results.csv';
cedebl8k2#
你不能用SELECT INTO OUTFILE来做。该命令仅创建新文件,如果文件已经存在,则该命令将失败。您可以使用MySQL客户端中的TEE命令将查询输出追加到现有文件中。下面是使用TEE将两个查询结果附加到同一个文件的示例:
SELECT INTO OUTFILE
TEE
TEE ~/TestInput/Results.csv SELECT * FROM Results; SELECT * FROM Results; NOTEE
tzdcorbm3#
在MySQL中无法直接实现。但是你可以尝试在文件名中添加日期时间部分,然后用'cat'(UNIX命令)或'type'(DOS命令)将一些文件合并为一个新文件。Help:cat (Unix)
wkyowqbh4#
Mysql 5.7及更高版本允许outfile是一个fifo文件(mkfifo)。你可以运行一个从fifo读取的脚本,就像cat myfifo myfifo myfifo myfifo myfifo一样简单。。>outfilefile。fifo文件需要的打开、读取、关闭序列的数量与你在outfile中执行select的数量一样多。否则,select into outfile不允许覆盖或附加到现有的常规文件。
4条答案
按热度按时间velaa5lx1#
您可以合并结果并立即写入。TEE将记录可能不希望的所有内容。在您的案例中:
字符串
cedebl8k2#
你不能用
SELECT INTO OUTFILE
来做。该命令仅创建新文件,如果文件已经存在,则该命令将失败。您可以使用MySQL客户端中的
TEE
命令将查询输出追加到现有文件中。下面是使用
TEE
将两个查询结果附加到同一个文件的示例:字符串
tzdcorbm3#
在MySQL中无法直接实现。但是你可以尝试在文件名中添加日期时间部分,然后用'cat'(UNIX命令)或'type'(DOS命令)将一些文件合并为一个新文件。
Help:cat (Unix)
wkyowqbh4#
Mysql 5.7及更高版本允许outfile是一个fifo文件(mkfifo)。你可以运行一个从fifo读取的脚本,就像cat myfifo myfifo myfifo myfifo myfifo一样简单。。>outfilefile。fifo文件需要的打开、读取、关闭序列的数量与你在outfile中执行select的数量一样多。否则,select into outfile不允许覆盖或附加到现有的常规文件。