Wie entfernen von Bedingungen aus der WHERE-Klausel, wenn Parameter NULL ist

Bin ich durch ein 2-Parameter eine PL/pgSQL-Funktion. Hier ist die Abfrage:

SELECT * 
FROM table 
WHERE col1 = param1 
  AND col2 = param2

Beide Parameter kann NULL sein, in welchem Fall der entsprechende Ausdruck sollte entfernt werden aus der WHERE - Klausel.

Wie kann ich das tun? Mit IF Bedingungen?

  • Ist die Funktion geschrieben in plpgsql (im Gegensatz zum einfachen SQL oder eine andere austauschbare Sprachen)?
  • seine schlichte plppgsql
InformationsquelleAutor user3339988 | 2014-04-30
Schreibe einen Kommentar