Giải pháp làm việc mà tôi có ngay bây giờ là tạo một chế độ xem tạm thời, có thể được khai báo trên nhiều dòng, sau đó chọn từ nó trong \copy
, vừa vặn thoải mái trên một dòng.
db=> CREATE TEMP VIEW v1 AS
db-> SELECT i
db-> FROM generate_series(1, 2) AS i;
CREATE VIEW
db=> \cd /path/to/a/really/deep/directory/structure/on/client
db=> \copy (SELECT * FROM v1) TO 'out.csv' csv header
COPY 2
db=> DROP VIEW v1;
DROP VIEW