SQL Server allgemein gültiges Datumsformat

Gibt man in einer Abfrage ein Datum an, kommt es öfters zu Problemen. Die grundsätzliche Frage, die sich stellt ist: In welchem Format gebe ich das Datum in meiner Abfrage an, damit der SQL Server mich versteht?
Intuitiv wählen viele das deutsche Datumsformat DD.MM.YYYY (also Tag.Monat.Jahr).Beispiel:

SELECT * 
FROM Orders 
WHERE Orderdate = '04.05.1998'

Der Erfolg gibt uns Recht. Erstmal.

Irgendwann kommt aber ein Kollege zu Dir und meint, dass die Abfrage bei ihm nicht funktioniert. Das liegt wahrscheinlich an seiner Spracheinstellung. Er könnte diese ändern, zum Beispiel mit dem SQL-Befehl

set language german

Will er aber nicht. Die spannende Frage ist: Welches Datumsformat kann ich in der Abfrage angeben, was in jeder Spracheinstellung funktioniert? Die Antwort: YYYYMMDD. Was heißt das? Gib das Datum im Format Jahr Monat Tag ohne Sonderzeichen an. Das funktioniert in jeder Sprache. Beispiel:

SELECT *
FROM Orders
WHERE Orderdate = '19980504'

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.