Datumsformat-Ausgabe auf Deutsch

Hi,

ich stehe gerade vor einem kleinen „Problem“ und zwar folgendem:

In meiner SQL-Datenbank habe ich unzählige Datensätze im SQL-Datumsformat („YYYY-MM-DD“) gespeichert. Bei der Ausgabe formatiere ich das Datumsformat entsprechend:

DATE_FORMAT( datum, ‚%d %M %Y‘ ) AS datum

nun schaut meine Ausgabe zum Beispiel so aus: 17 January 2008

Jetzt meine alles entscheidende Frage: Gibt es die Möglichkeit den Monat auf Deutsch auszugeben, sprich „Januar“ anstatt „January“ ?

Bin schon ein Weilchen auf der Suche aber irgendwie finde ich nichts. Finde hierzu auch nur Lösungen in PHP, die mich aber nicht weiter bringen, da ich kein PHP nutze sondern die Ausgabe nur über SQL nutze.

Hat irgendwer eine SQL-Formatierungsmöglichkeit damit die Monate auf Deutsch angezeigt werden ?

Danke im Voraus!

Gruß StarKeeper

Hallo Starkeeper,

da bleibt Dir nur übrig, ein Bandwurm Konstrukt mit Replace aufzubauen, wie

REPLACE (DATE\_FORMAT( datum, '%d %M %Y' ), 'January','Januar') AS datum

Das Ganze könnte man natürlich auch in eine SQL-Funktion packen, damit die Tipparbeit nicht so lange dauert.

MfG Georg V.

Hallo,

geht’s um MySQL (du hast zum verwendeteten DBMS nichts gesagt)?

Jetzt meine alles entscheidende Frage: Gibt es die Möglichkeit
den Monat auf Deutsch auszugeben, sprich „Januar“ anstatt
„January“ ?

Schau mal hier: http://dev.mysql.com/doc/refman/5.0/en/locale-suppor…

9.8. MySQL Server Locale Support

Beginning with MySQL 5.0.25, the locale indicated by the lc_time_names system variable controls the language used to display day and month names and abbreviations. This variable affects the output from the DATE_FORMAT(), DAYNAME() and MONTHNAME() functions.

Viele Grüße,

Andreas

(Tipp: Merk dir das Stichwort „Locale“; das ist auch anderen Systemen für die sprachabhängigen Ausgaben zuständig.)

Hi StarKeeper,

um welche DB geht es denn? Die eigentlich entscheidende Frage: warum speicherst du Datumsattribute als String / CHAR / VARCHAR2 … (wasauchimmer) und nicht als DATE ab? Solltest du hier nicht dein DB-Design noch mal korrigieren?

gruss
bernhard

Hi,

sorry, hatte ganz vergessen zu erwähnen dass es sich um eine mySQL DB handelt.

Im übrigen speichere ich die Daten als DATE und nicht als String :wink:

Gruß StarKeeper

Hi,

ja, es handelt sich in der Tat um eine mySQL DB.
Deine Antwort war auch genau das was ich gesucht hatte. Hätte da wohl noch Ewigkeiten suchen können…

Danke vielmals. Werde mir das merken! :smile:

Gruß StarKeeper