Heim >Datenbank >MySQL-Tutorial >Wie konvertiere ich MMTTJJJJ VARCHAR-Zeichenfolgen in DATETIME in SQL Server?

Wie konvertiere ich MMTTJJJJ VARCHAR-Zeichenfolgen in DATETIME in SQL Server?

DDD
DDDOriginal
2025-01-13 06:23:44232Durchsuche

How to Convert mmddyyyy VARCHAR Strings to DATETIME in SQL Server?

Verarbeitung der Konvertierung von mmttjjj VARCHAR in DATETIME in SQL Server

Das direkte Konvertieren von Zeichenfolgen im MMTTJJJJ-Format in DATETIME in SQL Server führt häufig zu Fehlern. Dies liegt daran, dass die Standardfunktion CONVERT ein bestimmtes Datumsformat erwartet. Dieser Artikel bietet eine solide Lösung für dieses häufige Problem.

Hier ist eine zuverlässige Methode:

<code class="language-sql">DECLARE @Date VARCHAR(8)
SET @Date = '12312009'
SELECT CONVERT(DATETIME, RIGHT(@Date, 4) + '-' + LEFT(@Date, 2) + '-' + SUBSTRING(@Date, 3, 2))</code>

Dieser Code funktioniert wie folgt:

  1. Die Funktion RIGHT extrahiert das Jahr (letzte vier Zeichen).
  2. Die Funktion LEFT extrahiert den Monat (die ersten beiden Zeichen).
  3. SUBSTRING extrahiert den Tag (Zeichen 3 und 4).
  4. Diese Teile werden mit Bindestrichen verkettet, um eine yyyy-mm-dd Zeichenfolge zu erstellen.
  5. CONVERT wandelt diese Zeichenfolge in einen DATETIME-Wert um.

Diese Technik überwindet die Einschränkungen eines einfachen CONVERT, indem die Zeichenfolgenkomponenten explizit in der richtigen Reihenfolge für die DATETIME-Interpretation von SQL Server neu angeordnet werden, wodurch Fehler außerhalb des Bereichs effektiv behoben werden. Dies gewährleistet eine genaue und zuverlässige Konvertierung von MMTTJJJJ-Zeichenfolgen in den DATETIME-Datentyp.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich MMTTJJJJ VARCHAR-Zeichenfolgen in DATETIME in SQL Server?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn