gottlieb: Alterabfrage bei Geburtsdatum

Hi Forum,
bisher hatte ich neben der Spalte "Geburtsdatum" 01.01.1960 auch eine Spalte "age", wo das Alter berechnet und zwischengespeichert wurde.
--> (YEAR(CURDATE())-YEAR(Geburtsdatum)) - (RIGHT(CURDATE(),5)<RIGHT(Geburtsdatum,5))

Mit der Spalte "age" konnte ich in einem Formular die Suche von einem bestimmten Alter eingerenzen. Bsp. Alter 20 bis 30.
Da ich aber nun die Spalte "age" gelöscht und nur noch das Geburtsdatum habe, weiß ich leider nicht, wie ich nun die Abfrage realisieren muss.

Könnte mir jemand eventuell helfen bzw. Tipps geben?

Grüße

  1. Hallo

    Da ich aber nun die Spalte "age" gelöscht und nur noch das Geburtsdatum habe, weiß ich leider nicht, wie ich nun die Abfrage realisieren muss.
    Könnte mir jemand eventuell helfen bzw. Tipps geben?

    das MySQL-Handbuch hat ein wundervolles Kapitel über Funktionen, darin enthalten ein Abschnitt zu Date and Time Functions. Die Funktion DATE_SUB() in Verbindung mit dem Operator BETWEEN ... AND, den Du im gleichen Kapitel findest, sollte genügen.

    Freundliche Grüße

    Vinzenz

    1. Hi Vinzenz,

      das MySQL-Handbuch hat ein wundervolles Kapitel über Funktionen, darin enthalten ein Abschnitt zu Date and Time Functions. Die Funktion DATE_SUB() in Verbindung mit dem Operator BETWEEN ... AND, den Du im gleichen Kapitel findest, sollte genügen.

      super, vielen Dank, das ziehe ich mir morgen gleich mal rein ;)

      Grüße

    2. Hi Vinzenz,
      will meine Lösung reinposten:

        
      SELECT Mitglieds_Name, Mitglieds_Id, (YEAR(CURDATE())-YEAR(GB_Datum)) - (RIGHT(CURDATE(),5)<RIGHT(GB_Datum,5))  
       FROM Tabelle  
       WHERE GB_Datum BETWEEN DATE_SUB(now(), INTERVAL 20 YEAR) AND DATE_SUB(now(), INTERVAL 17 YEAR);  
      
      

      Gäbe es hier irgendwelche Einwände?
      Die obere Query würde nun alle Mitglieder ausgeben, die min. 17 Jahre alt sind und noch nicht 20 geworden sind. Also ohne die 20. (17-19) Ich müsste mal probieren, wenn jemand genau 17 Jahre alt, bzw. genau heute Geburtstag hätte, ob er auch ausgegeben wird.

      Grüße