タイムスタンプが 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 を使用しています (そう言われています)。誰でもこれで私を助けてもらえますか?