PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Exportando uma consulta do PostgreSQL para um arquivo csv usando Python


O \copy não é um comando SQL, é um comando específico para o cliente de terminal Postgres psql e não pode ser usado neste contexto.

Use copy_expert(sql, file, size=8192) em vez disso, por exemplo:
sql = "COPY (SELECT * FROM a_table WHERE month=6) TO STDOUT WITH CSV DELIMITER ';'"
with open("/mnt/results/month/table.csv", "w") as file:
    cur.copy_expert(sql, file)

Leia mais sobre a função na documentação.