我在一个表中有一个列,其中时间戳已以 VARCHAR 格式存储,但我需要将这些与另一个表中的 DATETIME 值列进行比较以查找时间间隔,因此我想将 VARCHAR 时间戳转换或转换为 DATETIME。但是,铸造和转换都给我带来了问题。
VARCHAR 时间戳的格式如下所示: "29/07/2012 01:53:36 +12"
.
使用查询:
SELECT CAST(event_timestamp AS datetime) FROM the_table
产生ERROR: date/time field value out of range: "29/07/2012 01:53:36 +12"
.
使用查询:
SELECT CONVERT(datetime, event_timestamp, 131) from the_table;
生产
ERROR: syntax error at or near ","
LINE 1: select CONVERT(datetime, event_timestamp, 131) from the_tab...
^ (note: this is pointing at the first comma).
即使您使用通用函数(例如getdate()
数据源),CONVERT 的错误也会发生。这个数据库使用 ANSI SQL-92(或者我被告知)。谁能帮我解决这个问题?