从dd-mm-yy hh:mm:ss + tz到SQL Server中的日期时间

时间:2018-11-07 09:33:15

标签: sql-server datetime

我目前正在使用SQL Server中的日期,其数据类型为NVARCHAR(max),其格式为dd-mm-yy hh:mm:ss + tz,这意味着它们看起来像这样:

  

31-10-18 18:34:05 +00:00

尽管我付出了所有努力,但我找不到将这些日期转换为日期时间的方法,而我使用了CAST和CONVERT函数的各种组合。

大多数时候,我收到以下错误消息:

  

从字符转换日期和/或时间时转换失败   字符串。

我很确定这是因为年份写为'18'而不是'2018'。

因此,我想找到执行这种转换的最简单方法。

1 个答案:

答案 0 :(得分:0)

您需要设置日期格式之前

.end

结果

SET DATEFORMAT dmy;
SELECT CAST('31-10-18 18:34:05 +00:00' as datetimeoffset)