von andrhe » Mo, 27.07.2009 14:38
Hallo,
ich habe eine Datenbank mit Geburtsdaten, durch eine Abfrage erhalte ich die aktuellen Altersangaben.
Folgender Code:
Code: Alles auswählen
SELECT "Geburtsdatum", CASE WHEN MONTH("Geburtsdatum") > MONTH(CURRENT_DATE) THEN DATEDIFF( 'yy', "Geburtsdatum", CURRENT_DATE )-1
WHEN MONTH("Geburtsdatum") = MONTH(CURRENT_DATE)
THEN
(
CASE
WHEN DAY("Geburtsdatum") > DAY(CURRENT_DATE)
THEN DATEDIFF( 'yy', "Geburtsdatum", CURRENT_DATE )-1
ELSE DATEDIFF( 'yy', "Geburtsdatum", CURRENT_DATE )
END
)
ELSE DATEDIFF( 'yy', "Geburtsdatum", CURRENT_DATE )
END AS "Alter", "Name", "Vorname" FROM "Mitarbeiter" AS "Mitarbeiter"
Nun möchte ich, dass mir diese Abfrage gleich das Durchschnittsalter mit anzeigt, zum Beispiel in einer extra Spalte?
Also von den errechneten Alterangaben gleich das Durchschnittsalter noch angibt.
Geht das irgendwie?
Vielen Dank im Voraus!
Andreas
Hallo,
ich habe eine Datenbank mit Geburtsdaten, durch eine Abfrage erhalte ich die aktuellen Altersangaben.
Folgender Code:
[code]SELECT "Geburtsdatum", CASE WHEN MONTH("Geburtsdatum") > MONTH(CURRENT_DATE) THEN DATEDIFF( 'yy', "Geburtsdatum", CURRENT_DATE )-1
WHEN MONTH("Geburtsdatum") = MONTH(CURRENT_DATE)
THEN
(
CASE
WHEN DAY("Geburtsdatum") > DAY(CURRENT_DATE)
THEN DATEDIFF( 'yy', "Geburtsdatum", CURRENT_DATE )-1
ELSE DATEDIFF( 'yy', "Geburtsdatum", CURRENT_DATE )
END
)
ELSE DATEDIFF( 'yy', "Geburtsdatum", CURRENT_DATE )
END AS "Alter", "Name", "Vorname" FROM "Mitarbeiter" AS "Mitarbeiter"[/code]
Nun möchte ich, dass mir diese Abfrage gleich das Durchschnittsalter mit anzeigt, zum Beispiel in einer extra Spalte?
Also von den errechneten Alterangaben gleich das Durchschnittsalter noch angibt.
Geht das irgendwie?
Vielen Dank im Voraus!
Andreas