Rechnen mit Datumswerten / Geburtstage

Hallo,

ich hab einen kleinen geistigen Durchhänger. Ich hab in meiner Datenbank eine Datumsspalte mit den Geburtsdaten meiner Kunden.

Nun möchte ich mir alle Kunden anzeigen lassen, die z.B. die nächsten 5 Tage Geburtstag haben. Die einzige Idee die mir bisher gekommen ist, ist das ganze mittels extract und between hinzubiegen. Aber das ist ja alles andere als elegant, ausserdem möchte ich die Abfrage nicht jedesmal manuell bearbeiten müssen.

Hat jemand eine gute Idee / Funktion für mich?

Danke, Toni



test=*# select * from gb;
 person | geburtsdatum
--------+--------------
      1 | 2000-12-20
      2 | 2001-12-20
      3 | 2002-12-30
(3 rows)

test=*# select * from gb where extract(year from age(current_date, geburtsdatum)) != extract(year from age(current_date+5,geburtsdatum));
 person | geburtsdatum
--------+--------------
      1 | 2000-12-20
      2 | 2001-12-20
(2 rows)

Andreas