select in Datei ausgeben

Hallo!

Wie kann ich das Ergebnis einer select-Abfrage in eine externe Datei ausgeben?

Danke für die Antworten.

Mit COPY.

Andreas

Kannst du mal ne mögliche Anweisung schreiben und diese erläutern. Ich hab nämlich nicht wirklich Ahnung.

Danke.



test=# copy (select version()) to '/tmp/version.txt';
COPY 1
test=# \! cat /tmp/version.txt
PostgreSQL 8.4devel on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 4.2.3 (Ubuntu 4.2.3-2ubuntu7)

Ist natürlich die Frage, wo Du die Datei haben willst, hier landet sie auf dem Server. Willst Du das auf dem Client haben:

psql-dev -c 'select version()' > myfile.txt

Andreas

Ich komme nicht weiter. Ich habe mal die Abfrage

copy (select distinct on (nam, gmkg_nr) nam, gmkg_nr from kat_gmkgteil order by nam) to ‘/tmp/version.txt’;

abgesetzt und er bringt mir schon einen Syntaxfehler bei der Klammer vor dem select.

Keine Ahnung was da falsch ist. Bin über jede Hilfe dankbar.

Welche Version? Vor 8.2 konnte COPY nur plain tables kopieren, keine Ergebnisse eines Selects nd keine Views.
alls Du also 8.1 hast, dann erst Dein Select als Table materialisieren und diese kopieren.

Andreas

Genau das war die Ursache. Jetzt funkitioniert’s.

Vielen Dank nochmal.