PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Exportation d'une requête PostgreSQL vers un fichier csv à l'aide de Python

Le \copy n'est pas une commande SQL, c'est une commande spécifique au client de terminal Postgres psql et ne peut pas être utilisé dans ce contexte.

Utilisez copy_expert(sql, file, size=8192) à la place, par exemple :

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)

En savoir plus sur la fonction dans la documentation.