PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

PostgreSQL:eksport danych wynikowych z zapytania SQL do Excela/CSV

Przykład z nazwą pliku w stylu uniksowym:

COPY (SELECT * FROM tbl) TO '/var/lib/postgres/myfile1.csv' format csv;

Przeczytaj instrukcję o COPY (link do wersji 8.2).
Musisz użyć ścieżki bezwzględnej dla pliku docelowego. Pamiętaj, aby podwójne cudzysłowy nazwy plików ze spacjami. Przykład dla MS Windows:

COPY (SELECT * FROM tbl)
TO E'"C:\\Documents and Settings\\Tech\Desktop\\myfile1.csv"' format csv;

W PostgreSQL 8.2 , z standard_conforming_strings = off domyślnie musisz podwoić ukośniki odwrotne, ponieważ \ jest znakiem specjalnym i jest interpretowany przez PostgreSQL. Działa w dowolnej wersji. Wszystko jest w dobrej instrukcji:

nazwa pliku

Bezwzględna nazwa ścieżki pliku wejściowego lub wyjściowego. Użytkownicy systemu Windows mogą potrzebować użyć E'' ciąg znaków i podwójne ukośniki odwrotne używane jako separatory ścieżek.

Lub nowoczesna składnia z standard_conforming_strings = on (domyślnie od Postgresa 9.1):

COPY tbl  -- short for (SELECT * FROM tbl)
TO '"C:\Documents and Settings\Tech\Desktop\myfile1.csv"' (format csv);

Możesz też użyć ukośników w nazwach plików w systemie Windows.

Alternatywą jest użycie metapolecenia \copy domyślnego klienta terminala psql .

Możesz także użyć graficznego interfejsu użytkownika, takiego jak pgadmin, i kopiować / wklejać z siatki wyników do programu Excel w przypadku małych zapytań.

Ściśle powiązana odpowiedź:

  • Kopiuj wyniki z widoku PostgreSQL z jednej bazy danych do tabeli w innej

Podobne rozwiązanie dla MySQL:

  • Eksportowanie danych MYSQL do Excela/CSV przez php


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zaimportować moduły lub zainstalować rozszerzenia w Postgresie?

  2. Unikalne ograniczenie kombinacji dwóch kolumn?

  3. 2 sposoby na pokazanie wszystkich baz danych w PostgreSQL (psql)

  4. Zrzut Postgres zawierający tylko części tabel dla migawki dewelopera

  5. Czy PostgreSQL obsługuje przezroczystą kompresję tabel (fragmentów)?