Über Funktion Teil eines Select-Befehls übergeben

Liebes Forum,

ich habe eine Funktion

uhrzeit(objektnr int,tagauswahl text,abfragezeit int)

welche über die Variable tagauswahl letztlich definieren soll, welche Spalte eine Tabelle abgefragt werden soll.

Konkret: Ich hatte gehofft, dass

anfang := $2 from cms_gastronomie_oeffnungszeiten where objekt_id=$1;

dasselbe wäre wie “SELECT mittwoch from cms_gastronomie_oeffnungszeiten where objekt_id=20” (z.B.).

Leider ist dieses nicht der Fall.
Der Wert “anfang” erhält dann immer den Wert der Variable $2 (tagauswahl) ??

Weiß jemand wie ich das Problem lösen kann?

Danke im Voraus, Kai

Mittels Execute. Also, du bastelst Dir einen String in plpgsql, der dein Select enthält, und rufst EXECUTE auf.

Andreas

Cool… :slight_smile:
Danke einmal mehr!!