SQL Server Konvertierung von int to Date

Habe ich ein Szenario, wo ich eine int-Spalte mit den folgenden Terminen zum Beispiel:

20131210

20131209

Was ich will, ist, ich möchte konvertieren Sie die oben, um einen Datums-Datentyp, so dass ich es verwenden können, mit GETDATE () - Funktion.
Dies ist mein Versuch, aber ich erhalte eine Fehlermeldung:

SELECT CONVERT(DATETIME, CONVERT(varchar(8), MyColumnName))
FROM MyTable
WHERE DATEADD(day, -2, CONVERT(DATETIME, CONVERT(CHAR(8), MyColumnName))) < GetDate()

Dies ist der Fehler, bin ich immer:

Fehler bei der Konvertierung beim konvertieren von Datum und/oder Zeit von-Zeichenfolge.

Wenn der Wert ein int, versuchen SELECT CAST(CAST(20131210 AS VARCHAR(12)) AS DATE). Ärgerlich ja, aber es funktioniert auf meinem 2012.
teilen Sie die Zeichenfolge.

InformationsquelleAutor user3092895 | 2013-12-11

Schreibe einen Kommentar