1

嗨,我陷入了将 UTC DateTime 字符串“2013-02-04T10:30:23+00:00”转换为 Sql 2005 日期时间格式的问题。我试过 convert(datetime,'2013-02-04T10:30:23+00:00',101)但它给了我错误“从字符串转换日期时间时转换失败。

但是,这确实有效convert(datetime,'2013-02-04 10:30:23',101)

convert(datetime,'2013-02-04T10:30:23+00:00',101)有什么解决方法吗?

提前致谢。

4

2 回答 2

0
DECLARE @utc nvarchar(100) = '2013-02-04T10:30:23+00.00'
SELECT CAST(STUFF(@utc, CHARINDEX('+', @utc), LEN(@utc),'') AS datetime)
于 2013-02-15T00:55:40.553 回答
0

你可以这样做:

DECLARE @s VARCHAR(100) = '2013-02-04T10:30:23+00:00'
SELECT  CONVERT(DATETIME, LEFT(@s, 10) + ' ' + SUBSTRING(@s, 12, 8), 101)

这将提取字符串的所需部分,将它们连接成一个新字符串,然后用于CONVERT获取DATETIME.

于 2013-02-14T12:18:37.857 回答