Je suis en train d'essayer de convertir une colonne de type chaîne en date.Convertir jj/mm/aaaa à ce jour dans SQL Server
Le nom de la colonne est StartDate
, qui contient un format de date de chaîne dd/mm/yyyy
. Le type de champ est varchar(3000)
.
J'ai essayé les suivantes:
CONVERT(datetime, StartDate, 103)
CAST(CONVERT(VARCHAR(10), StartDate, 110) AS DATE)
CONVERT(DATE, RIGHT(StartDate, 4) + '-' + SUBSTRING(StartDate, 4, 2) + '-' + LEFT(StartDate, 2), 126)
et d'autres combinaisons similaires.
Je reçois toujours des messages d'erreur "hors gamme" et "conversion échouée".
Est-ce que quelqu'un a une solution créative?
alors vous avez de mauvaises données (quelque chose comme '30/02/2015' ou' 12/13/2017', etc) – Lamak
La première et la troisième variante devraient fonctionner très bien. Le second (avec le style 110) est pour un autre format: mm-jj-aaaa. –
Copie possible de [Sql Server chaîne à la conversion de date] (http://stackoverflow.com/questions/207190/sql-server-string-to-date-conversion) –