Spaltennamen einer Abfrage per SQL ermitteln

in Vorbereitung auf einen CSV-Export würde ich gern die Spaltennamen eines beliebigen SELECTs einfach per Abfrage ermitteln, ohne dafür vorher einen VIEW zu erstellen oder ähnliches

gibt es da irgendwelche Ansätze…?

wozu brauchst Du die Namen? Wie machst Du den Export?

Wenn Du COPY verwendest, um die CSV zu erzeugen, kannst Du die Option HEADER verwenden, dann hast die Spaltennamen in der ersten Zeile.

COPY setzt voraus, dass du auf dem DB Server bist und man die Ergebnismenge auf der Console ausgibt oder in eine Datei schreibt…
ich möchte die Daten per beliebigem SQL abfragen

Angeblich gibt es irgendeine SQL extension für dynamisches SQL. Die könnte da vielleicht helfen.

Vermutlich willst Du nicht Deine Statement selbst parsen und zu Fuß die Quelltabellen Deiner Select Clause rausfinden, um zu denen dann Feldnamen und Typen auszulesen.

Eine einfach Methode für Namen und Typen ist das Select mit einer unwahren Bedingung zu öffnen, ergibt eine leere Menge mit richtigen Namen und Typen.

Ich finde das geht mit dem folgenden Trick ganz gut.
Man listet die Tabelle auf und beschränt mit limit auf 0 also keinen Datensatz,
dann bleibt nur der Tabellenkopf:

select * from pg_catalog.pg_statistic
limit 0;

Dieses Thema wurde automatisch 60 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Antworten mehr erlaubt.