我目前收到错误:
java.sql.SQLException: ORA-01843: not a valid month
我假设这与我设置时间戳的方式有关...
所以我有这样的查询:
select * from A_TABLE where A_TIMESTAMP_COL < '1252944840000'
但它不起作用......我不想在理想情况下将其转换为日期。是否有一些特殊的语法告诉Oracle这是一个时间戳?
答案 0 :(得分:1)
您可以使用to_timestamp()函数将字符串转换为时间戳值:http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions201.htm#sthref2458
答案 1 :(得分:0)
使用java.sql
便捷方法获取该毫秒时间并将其转换为日期或时间戳。
答案 2 :(得分:0)
我认为您可以将日期列转换为char,并执行以下操作:
select * from A_TABLE where to_char(A_TIMESTAMP_COL) < '1252944840000'
这应该允许你比较字符串,而不是日期。
答案 3 :(得分:-1)
您可以使用此查询:
SELECT * FROM A_TABLE WHERE TIMESTAMP < (SYSDATE - 10/1440)
(SYSDATE - 10/1440)
表示SYSDATE - 10 Minutes
。
另请参阅一些示例here。