比较简单的方法是TIMESTAMP类型的字段进入最后 n 小时? 我可以根据日期和时间进行计算,但有可能是
timestamp > SYSDATE - 1
据了解,(SYSDATE - 1)是昨天,因此将检查时间戳是否在过去24小时内。
提前致谢。
答案 0 :(得分:12)
如果您需要在最近n小时内查找记录,请从当前时间减去时间间隔。对于Oracle,间隔的数量必须使用单引号。您可以使用多个间隔(小时,分钟,秒,日,年,月)。
timestampfield > current_timestamp - interval '1' hour
答案 1 :(得分:4)
您也可以添加/减去非整数,例如:
SELECT SYSDATE - 0.5 FROM dual;
指12小时前。
答案 2 :(得分:3)
您可以使用
timestamp > to_timestamp(sysdate-1)
答案 3 :(得分:1)
你可以这样做:
时间戳> cast(sysdate-1作为时间戳)