从字符串转换日期和/或时间时转换失败。
在SQL Server中运行此语句时出现上述错误:
SELECT CONVERT(datetime, 'Fri, 15 Jan 2016 17:30:05 GMT')
实际上我想在Datetime
列
答案 0 :(得分:3)
如果要将字符串'Fri, 15 Jan 2016 17:30:05 GMT'
插入datetime
列,则需要在插入前从字符串中删除Fri,
和GMT
。
SELECT CAST(substring(@str_date,5,len(@str_date)-8) as datetime)
答案 1 :(得分:3)
根据Tim Biegeleisen的建议,该字符串需要进行处理以进行转换。要进行转换,您需要在结尾处删除当天(Fri,
)和GMT
时区,例如:
DECLARE @date varchar(50) = 'Fri, 15 Jan 2016 17:30:05 GMT'
SELECT CONVERT(DATETIME, SUBSTRING(@date, 5, LEN(@date) - 8), 113)
此解决方案会删除时区信息,如果要将其转换回UTC,请查看此post。