Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

SQL-Abfrage, die das Alter ermittelt anhand des Geburtsdatums

Frage Microsoft Microsoft Office

Mitglied: Moelle

Moelle (Level 1) - Jetzt verbinden

29.05.2007, aktualisiert 30.05.2007, 15146 Aufrufe, 9 Kommentare

[Edit Biber] Titel angepasst. Siehe unten [/Edit]

Hallo,

ich habe folgendes Problem, ich habe eine Access Datenbank in der Namen und die Geburtsdaten drin enthalten sind.
Ziel ist das aktuellle Alter in Jahren durch eine Abfrage zu ermitteln. Max Müller 01.01.1900 Alter ? Um das Alter zu ermitteln brauche ich eine Lösung????

Wie kann ich das realiseren???

Brauche Hilfe!

e58745b58a9da3842481b935ea3ac071-unbenannt - Klicke auf das Bild, um es zu vergrößern

Anhand des Geburtsdatum des Kindes soll jetzt das tatsächliche Alter in Jahren in einer neuSpalte/Feld angezeigt werden!
Mitglied: jato11
29.05.2007 um 16:40 Uhr
Hallo Moelle,
Wieso denn eine Erstellungsabfrage?
wie soll denn das Alter aussehen Tage, Monate, Jahre?
Wenn Du ein Feld erzeugst "x:Datum()-[Geburtsdatum]" erhälst Du die Anzahl der Tage.
Für die Anzahl der Jahre musst Du das Datum mit "Datteil" zerlegen.

Viele Grüße
Torsten
Bitte warten ..
Mitglied: jato11
29.05.2007 um 16:57 Uhr
Mit DatDiff geht es auch.
Da hat M$ was zu geschrieben
http://support.microsoft.com/default.aspx?scid=kb;de;D37560
Bitte warten ..
Mitglied: Biber
29.05.2007 um 22:07 Uhr
Moin Moelle,

bitte wirf mal einen Blick auf folgende Site Profilieren mit Rechtschreibung und gab mal bitte Feedback, ob Dir irgendetwas davon bekannt vorkommt.

Falls ja, bring mal bitte Deine Frage in eine forums-, biber- und nettiquette-verträgliche Form. Danke.

Mit reinem M$-Access-SQL geht es etwas stressärmer... was M$ in diesem Beispiel zusammengeschrotet hat, finde ich ja nicht so motivierend...
...ausgerechnet die machen Code-Vorschläge...*gngngngn

Meine Variante (ich sach mal, die Felder heißen "Name" und "Burzeltach")
01.
SELECT Name,  int ((now() -burzeltach)/364.3) as Alter  
02.
from Deinetabelle;
Die im Schnitt 364.3 als durchschnittliche Tagesanzahl pro Jahr sind nur ein gefühlter Näherungswert - ich hab mir nicht die Mühe gemacht, wikipedia o.ä. zu befragen. Ggf anpassen.

Die "Esrtellungsabfrage" im Titel ändere ich schon mal um in "Abfrage".

Gruß
Biber
Bitte warten ..
Mitglied: Moelle
30.05.2007 um 10:39 Uhr
Hallo erstmal Danke für eure Tipps ich habe meinen Beitrag noch mal editiert und einen Ausschnitt der Tabelle hinzugefügt. Die Tabelle in Accrss heißt Grunddaten. Auch dieser Tabelle Grunddaten soll ich ein FEld hinzufügen (ALter) Dies soll errrechnet werden aus dem FEld Geburtsdatum des Kindes.

Bisher habe noch keine Lösung gefunden!!!!
Bitte warten ..
Mitglied: Biber
30.05.2007 um 11:13 Uhr
Moin Moelle,

wenn Du nicht aufhörst mit den 4 Ausrufungszeichen und den 4 Fragezeichen am Ende der Sätze, dann nehm ich Dir die Tastutur weg.

Dennoch danke fürs Editieren.

Abgesehen davon:
[Ich unterstelle jetzt mal, dass die Tabelle "Grunddaten" heißt und das Feld mit dem Geburtsdatum des Kindes "Geburtsdatum_des_Kindes".
01.
SELECT Grunddaten.*,  
02.
int((now()-Geburtsdatum_des_Kindes)/((#31-12-1999# - #01-01-1900#) / 100)) AS [Alter] 
03.
FROM Grunddaten;
Bei der Berechnung, wieviele Tage wohl ein Jahr im Durchschnitt hat, habe ich mich gestern ein wenig blöd angestellt, sorry.
Jetzt berechne ich die Summe aller Tage in 100 Jahren (1.1.1900-31.12.1999) und teile das durch 100. Raus kommt dann 365,23.
Hier nochmal eine Debug-Abfrage zum besseren Verständnis:
01.
SELECT Grunddaten.*,  
02.
int((now()-Geburtsdatum_des_Kindes)/((#31-12-1999# - #01-01-1900#) / 100)) AS [Alter], 
03.
 ((now()-Geburtsdatum_des_Kindes)/((#31-12-1999# - #01-01-1900#) / 100 )) AS [Alter2], 
04.
(#31-12-1999# - #01-01-1900#) / 100 as TageProJahr 
05.
FROM Grunddaten;
Gruss
Biber
Bitte warten ..
Mitglied: Moelle
30.05.2007 um 12:23 Uhr
Mal wieder Vielen Dank,

Ich verspreche dir keine !!!! mehr zu verwenden.

Ich habe wenig Ahnung von SQL
Folgendes habe ich durchgeführt

Eine neue Abfrage erstellt und dann die SQL Anweisung eingefügt.
Nach Ausführen der Abrage kommt die Meldung Parametrwert eingeben Geburtsdatum_des_ Kindes
Bitte warten ..
Mitglied: Biber
30.05.2007 um 13:10 Uhr
Moin Moelle,

dann danke für das Unterdrücken der Ausrufungszeichen - und Du wirst sehen, Du bekommst auch Antworten ohne diese. Wir wissen alle, dass die Fragen für den Fragesteller wichtig sind und nehmen das ernst.

So, mit dem Statement sind wir schon nah dran - wir müssen nur noch den tatsächlichen Namen des Feldes (das oben in Deinem Screenshot nur teilweise angezeigt wird) einsetzen.
Bitte öffne dazu die Tabelle "Grunddaten" im Entwurfmodus (mit der Maus auf die Tabelle, rechte Maustaste -> "Entwurfsansicht"), gehe auf das Feld nach Adresse_PLZ, das irgendwie mit "Geburtsdatum d" anfängt, markier das und kopiere Dir diesen Namen mit STRG-C.

Gehe wieder in Deine neu erzeugte Abfrage, markiere dort "Geburtsdatum_des_Kindes" und Drücke STRG-V.
Füge vor und nach dem Namen noch eine EckigeKlammer-Auf bzw -Zu ein ("[" und "]").

Dann sollte es fliegen.

Gruß
Biber
Bitte warten ..
Mitglied: Moelle
30.05.2007 um 14:09 Uhr
Well done, alles OK hat geklappt, ich hatte beim Kopieren ein Zeichen vergessen.
Jetzt ging es. Das habe wir in meiner damaligen SQL Schulung nciht gemacht. Ist aber auch schon ein bißchen her.

Ich glaub ich sollte mal wieder etwas intensiver damit befassen.

Nochmals vielen Dank und dickes Ausrufezeichen
Bitte warten ..
Mitglied: Biber
30.05.2007 um 14:47 Uhr
Freut mich, moelle,

Nochmals vielen Dank
Gern geschehen.
und dickes Ausrufezeichen
Aber nur eines bitte....

Ich schliesse den Beitrag mal.

Grüße
Biber
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Datenbanken
gelöst SQL-Abfrage - DISTINCT - letztes Datum (3)

Frage von emeriks zum Thema Datenbanken ...

Datenbanken
SUM oder AVG in SQL Abfrage dauert viel zu lange warum? (5)

Frage von samet22 zum Thema Datenbanken ...

Datenbanken
gelöst SQL-Abfrage mit MAX() (9)

Frage von FrAmEr zum Thema Datenbanken ...

Datenbanken
gelöst Schleifen in SQL-Abfrage bei 2 Tabellen (2)

Frage von Aximand zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...

Microsoft Office
Keine Updates für Office 2016 (11)

Frage von Motte990 zum Thema Microsoft Office ...