Grundkurs SQL

3.5  Datums- und Zeit-Funktionen

In unserer Datenbank zur Personalverwaltung haben wir für jeden Mitarbeiter auch sein Geburtsdatum gesichert und könnten uns nun fragen: An welchem Wochentag wurde Herr/Frau X geboren?

Dafür bietet MySQL die Funktionen DAYOFWEEK(datum), WEEKDAY(datum) oder auch DAYNAME(datum). Im Prinzip liefern alle diese Funktionen dasselbe Ergebnis, jedoch mit kleinen Unterschieden wie wir gleich sehen werden.

DAYOFWEEK(datum) gibt den Wochentag-Index zurück. Dabei gilt: 1 = Sonntag, 2 = Montag, ... 7 = Samstag. Diese Index-Werte entsprechen dem ODBC-Standard (Open Database Connectivity Standard).

[21]SELECT name AS Familienname, DAYOFWEEK(geburtsdatum) AS Tag_der_Geburt
FROM   tbl_mitarbeiter

WEEKDAY(datum) gibt gleichfalls einen Wochentag-Index zurück, allerdings in anderer Reihenfolge: 0 = Montag, 1 = Dienstag, ... 6 = Sonntag

[21]SELECT name AS Familienname, WEEKDAY(geburtsdatum) AS Tag_der_Geburt
FROM   tbl_mitarbeiter

DAYNAME(datum) schließlich gibt den englischen Namen des Wochentags zurück.

[21]SELECT name AS Familienname, DAYNAME(geburtsdatum) AS Tag_der_Geburt
FROM   tbl_mitarbeiter

Testen Sie alle drei Varianten und überzeugen Sie sich, dass die Beschreibungen korrekt sind.

Wie auch bei den mathematischen Funktionen sind in MySQL noch viele weitere nützliche Datumsfunktionen definiert. Sehen Sie auch hier bei Bedarf im MySQL 5.1 Referenzhandbuch nach!