PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Exportieren einer PostgreSQL-Abfrage in eine CSV-Datei mit Python

Die \copy ist kein SQL-Befehl, sondern ein spezifischer Befehl für den Postgres-Terminal-Client psql und kann in diesem Zusammenhang nicht verwendet werden.

Verwenden Sie copy_expert(sql, file, size=8192) stattdessen z. B.:

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)

Lesen Sie mehr über die Funktion in der Dokumentation.