'Hier'-Tabellen in PostgreSQL-Anfragen

Hallo!

Ich möchte in PostgreSQL dynamisch erzeugte Anfragen verarbeiten (relativ komplex, mit geschachtelten Subqueries). Jetzt habe ich das Problem, dass ich in vielen dieser Anfragen bestimmte Daten benötige, die nur für diese Anfrage Gültigkeit haben. Stellt euch das als einspaltige Tabellen (oder Listen) vor, die zusammen mit der Anfrage erstellt werden, mit den in der Anfrage referenzierten Tabellen gejoint werden müssen (cross-join) und danach weggeschmissen werden. Zudem muss ich mehrere solcher Anfragen parallel verwenden können, so dass ein ziemlicher Aufwand entsteht, diese Tabellen namentlich voneinander abzugrenzen, zu erzeugen und zu löschen.

Ich weiß, PostgreSQL unterstützt Arrays und prozedurale Functionen, aber mit ersteren kann ich kein Join machen und bei letzteren besteht auch wieder das Namensproblem und der Aufwand der Erstellung und Löschung.

Hat irgend jemand eine Idee, wie ich das vernünftig umsetzen könnte? Ich bräuchte eigentlich nur die Möglichkeit, in der Anfrage sowas zu schreiben wie

SELECT ...
FROM (v1,v2,v3,v4,v5, ...) AS table1, table2, table3

Lässt sich sowas irgendwie bewerkstelligen?

Dank im Voraus,
Stefan