Это следующий вопрос от this answer по поводу "Save PL/pgSQL output from PostgreSQL to a CSV file".Используйте psql's copy для многострочного запроса
Мне нужно написать CSV-файл на стороне клиента, используя psql's \copy
command. Один лайнер работает:
db=> \copy (select 1 AS foo) to 'bar.csv' csv header
COPY 1
Однако, у меня есть длинные запросы, которые охватывают несколько строк. Мне не нужно, чтобы показать запрос, так как я не могу показаться, чтобы продлить этот прошлый одну строку без ошибки синтаксического анализа:
db=> \copy (
\copy: parse error at end of line
db=> \copy (\\
\copy: parse error at end of line
db=> \copy ("
\copy: parse error at end of line
db=> \copy "(
\copy: parse error at end of line
db=> \copy \\
\copy: parse error at end of line
Можно ли использовать \copy
с запросом, который охватывает несколько строк? Я использую psql для Windows.
Вам, вероятно, придется избегать новых линий? – Falmarri
@Falmarri Я поставил несколько общих попыток эвакуации в моем вопросе, но из документов «psql ... обратные сбрасывающие экраны не применяются» к '\ copy', что усложняет ситуацию. –
Я отправил ей ответ: http://stackoverflow.com/a/44043716/24105, который представляет собой окольный путь для получения нескольких строк. –