phpBuddy

phpBuddy.eu Forum

Schon registriertes Mitglied im Forum? Nein? Dann aber los. Von Anfänger bis Profi ist dort jeder willkommen. Neben PHP, MySQL, XHTML, CSS Fachgesimpel gibt es dort auch Support für die phpBuddy Scripts.
Reinschauen und registrieren lohnt sich!

Sie sind hier: Startseite Datums- und Zeitfunktionen
Datums- und Zeitfunktionen von MySQL
Beitragsseiten
Datums- und Zeitfunktionen von MySQL
MySQL Datum in Deutsches Datum umwandeln
Volljährigkeit ermitteln
Wer hat heute Geburtstag?
Das korrekte Alter berechnen
Alle Seiten

Datumsberechnungen mit MySQL

Ein ständig wiederkehrendes Problem beim entwickeln von Webseiten sind Berechnungen von und mit einem Datum. Sei es um Geburtstagskinder einer Community zu ermitteln oder auch einfach nur das korrekte Alter in Jahren anzuzeigen. Auch das Umwandeln von einem MySQL Datum, dass im amerikanischen Format vorliegt, in ein Deutsches Datumsformat, stellt viele Jungprogrammierer vor Probleme.
Deswegen möchte ich hier mal einige Lösungen vorstellen die, wie man sehen wird, alles andere als kompliziert sind.

Alle hier gezeigten Beispiele beziehen sich auf MySQL 5.x oder höher!


Unsere Beispieldatenbank

Bevor wir uns an's Werk machen brauchen wir erst einmal eine kleine Datenbank mit Daten zum testen.

CREATE TABLE IF NOT EXISTS `datumtest` (
  `id` int(7) NOT NULL auto_increment,
  `name` varchar(20) NOT NULL,
  `datum` datetime NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM;
 
 
INSERT INTO `datumtest` (`id`, `name`, `datum`) VALUES
(1, 'Alfons', '1995-08-17 14:48:58'),
(2, 'Alexandra', '1973-01-22 08:14:33'),
(3, 'Bettina', '1971-06-22 23:33:04'),
(4, 'Christian', '1955-11-29 00:03:54'),
(5, 'Dieter', '1968-05-17 10:19:13'),
(6, 'Franziska', '1989-04-17 03:52:54'),
(7, 'Michael', '2003-04-17 00:53:52');

Das sind nicht sonderliche viele Datensätze, aber für unsere Zwecke vollkommen ausreichend. Wie wir sehen haben wir ein typisches Datum-Feld in unserer Tabelle, dass vom Typ datetime ist. Der Aufbau dieses Formats ist JJJJ-MM-TT SS:MM:ss, was dem international üblichen Format entspricht.