复制命令postgres附加到csv文件

时间:2016-06-16 14:50:36

标签: python postgresql psycopg2

我在psycopg2中有一个COPY命令,我在循环中运行。我想知道如何附加到CSV而不是每次都执行新的复制。

代码:

while True:

    cur.execute("COPY (SELECT id,a,b,c,d from t1,t2 WHERE date>= TIMESTAMP TIMESTAMP %(t)s AND date < TIMESTAMP %(t)s + interval '1h' * t2.frequency) \
           TO 'path/to/file.csv' DELIMITER ',' CSV;", d)

提前致谢。

1 个答案:

答案 0 :(得分:3)

这是一个丑陋的黑客攻击(仅适用于unix)

COPY table_one(id)
TO PROGRAM 'cat - >/tmp/onetwo.out'
        ;

COPY table_two(id)
TO PROGRAM 'cat - >>/tmp/onetwo.out'
        ;