从格式为 'dd/mm/yyyy hh:mm:ss' 的 varchar 转换为 DateTime

Convert from varchar formatted as 'dd/mm/yyyy hh:mm:ss' to DateTime

我坚持以下。如何将如下格式的字符串转换为 DateTime 类型?

SELECT CONVERT(DATETIME,LEFT('26/03/2012 00:00:00',10))

以上错误如下:

The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.

您可以使用 SET DATEFORMAT:

SET DATEFORMAT dmy;

SELECT CAST('26/03/2012 00:00:00' AS DATETIME);

LiveDemo

您可以使用具有样式 103 (dd/mm/yyyy) 的 CONVERT 函数,请参阅此 link 了解更多详细信息。

SELECT CONVERT(DATETIME,'26/03/2012 00:00:00',103)

试试这个:

SELECT CONVERT(DATETIME,LEFT('26/03/2012 00:00:00', 10),105)