Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Alter des Mitarbeiter

Begonnen von Simsalabimel, Juni 17, 2016, 18:56:06

⏪ vorheriges - nächstes ⏩

Simsalabimel

Ich möchte gerne das Alter der Mitarbeiter berechnen und nach dem Alter sortieren. Mit der Formel Year(Now())-Year(Geburtsdatum) habe ich mein Alter raus bekommen aber will das genauer kalkulieren. Die Spalte Geburtsdatum ist hinterlegt aber als Textfeld gespeichert. ROUND((Date()-Geburtsdatum) / 365,0)
komm ich auf unsinnige zahlen. Gibts eine Möglichkeit oder muss ich das als Fehler in der Datenbank verbuchen. Danke



ebs17

Zitat... oder muss ich das als Fehler in der Datenbank verbuchen
Ich würde da zuerst an einen Entwickler-Fehler denken.
Bspw. ist das Alter nach der Berechnung aktuelles Jahr minus Geburtsjahr erst mit und nach dem Geburtstag korrekt.

Eine etwas umfassendere Lösung:
Geburtstagsliste sortiert mit Altersberechnung und Hervorhebung von runden Geburtstagen
Mit freundlichem Glück Auf!

Eberhard

MzKlMu

Hallo,
das Alter muss mit einer eigenen Funktion berechnet werden. Der gleiche Ausdruck wird auch zur Sortierung verwendet.
SELECT Vorname, Nachname, Geburtsdatum, DateDiff("yyyy",[Geburtsdatum],Date())+(Format(Date(),"mmdd")<Format([Geburtsdatum],"mmdd")) AS AAlter
FROM Namenstabelle
ORDER BY DateDiff("yyyy",[Geburtsdatum],Date())+(Format(Date(),"mmdd")<Format([Geburtsdatum],"mmdd"))

Feldnamen ggf. erweitern und anpassen.

PS:
AAlter ist bewusst mit AA geschrieben, da Alter ein reserviertes Wort ist. Kannst auch eine andere Bezeichnung verwenden.
Gruß Klaus

Simsalabimel

Okay schonmal Danke dafür. Hast mir sehr geholfen. Kann ich die DateDiff Funktion weiter für Excel nutzen als Pivottabelle ??

MzKlMu

Hallo,
den Zusammenhang mit Excel verstehe ich nicht.
Bitte ausführlicher erklären.
Gruß Klaus

Simsalabimel

Diese Abfrage soll auch als eine Pivotvorlage für Excel dienen. Wenn ich jedoch in Excel die Datei extern abrufen will sieht er diese Abfrage nicht. Vermutlich kennt Excel bzw. meine Version die Funktion DateDIff nicht