Сохранить вывод PL / pgSQL из PostgreSQL в файл CSV

Существует несколько решений:

1. psql команда

psql -d dbname -t -A -F"," -c "select * from users" > output.csv

Это имеет большое преимущество в том, что вы можете использовать его через SSH, например ssh postgres@host command

2. команды postgres copy

COPY (SELECT * from users) To '/tmp/output.csv' With CSV;

3. интерактивный psql (или нет)

>psql dbname
psql>\f ','
psql>\a
psql>\o '/tmp/output.csv'
psql>SELECT * from users;
psql>\q

Все они могут использоваться в скриптах, но я предпочитаю # 1.

Также если нужно запустить большой скрипт то можно использовать

\i e:/myFolder/index.sql;

или

psql -U postgres -d mydb -a -f "D:\index.sql"

Was this helpful?

0 / 0