MySQL-Formatierung mit DATE_FORMAT und Text einbinden

3 Nov 2008 um 23:35 - MySQL/Datenbank

Sortieren nach Datum - typische Aufgabe für Programmierung. Selbst die Sortierung ist sehr leichte und gewöhnliche Sache mit Hilfe von ORDER BY-Klausel. Aber das Datum wird in Datenbank im internen Format gespeichert, z.B. "2008-11-02 19:18:28" (je nach Einstellungen im Server). Aber man ist daran gewöhnt die Zeit und das Datum im bestimmten Format zu lesen - "2. November 2008" kann man besser verstehen als "2008-11-02".

Meine Lieblingsfunktion in MySQL für Formatierung ist DATE_FORMAT:

DATE_FORMAT(date,format) - Formatiert den Wert date entsprechend dem String format. 
Die folgenden Konfigurationsangaben können im String format verwendet werden.
Das Zeichen '%' ist vor jede Formatangabe zu setzen.

Die gesamte Beschreibung ist hier zu finden. Zum Bespiel, die Abfrage:

SELECT DATE_FORMAT('2008-11-02 19:18:28', '%d.%m.%Y, %H:%i' )

bringt als Ergebnis: 02.11.2008, 19:18

Das ist schon gut lesbar, wir können dies noch mit den Textangaben erweitern

SELECT DATE_FORMAT('2008-11-02 19:18:28', 'Erstellt am %d.%m.%Y, %H:%i')

Ergebnis: "Erstellt am 02.11.2008, 19:18" oder

SELECT DATE_FORMAT('2008-11-02 19:18:28',
'Der Kommentar wurde am %d.%m.%Y, %H:%i veröffentlicht.')

Ergebnis: "Der Kommentar wurde am 02.11.2008, 19:18 veröffentlicht."

Mit diesem Verfahren kann man die fertigen komplexen Sätze noch in SQL-Abfrage programmieren. Hilft nicht immer, aber kann nützlich sein.

Kommentare

Bisland keine Kommentare - sei der erste!


© 2008 Anton Pavlushko - Webentwicklung, Internetmarketing und Suchmaschinenoptimierung (SEO)

0.0063779354095459 sec