现在我知道这个问题已经被问过好几次了,我已经回答了几十个答案,但似乎没有什么对我有用。我正在尝试将字符串转换为 SQL 中的日期时间,但出现以下错误:
Arithmetic overflow error converting expression to data type datetime.
这是我要运行的查询:
SELECT MessageText,
CONVERT(datetime,SUBSTRING(MessageText, CHARINDEX('(', MessageText)+1,
CHARINDEX(')', MessageText) -
CHARINDEX('(', MessageText)-1)) AS TourTimeStamp,
TIMESTAMP
FROM tblMessageLog
WHERE MessageText LIKE 'Tour run timestamp%for tour%has been%'
ORDER BY TIMESTAMP DESC
因此,在 中MessageText
,有我正在寻找的时间戳(该TimeStamp
列实际上只是消息日志条目的时间戳......),我可以通过使用子字符串成功获取它。
该子字符串 ( TourTimeStamp
) 的格式为:dd/mm/yyy hh:mm:ss
例如25/02/2012 20:55:13
任何帮助将不胜感激。