SQL中两个时间戳的差异为一整天

时间:2013-03-22 16:24:31

标签: sql oracle10g

请帮我解决这个问题。

我正在使用Oracle数据库,并且有一个表每秒插入4-5条记录,所以我必须检查一整天没有标记发生至少15分钟。

2 个答案:

答案 0 :(得分:1)

您可以使用lag进行检查。

例如假设您的字段被称为数据类型ts的{​​{1}}:

timestamp

所以它会给出>发生了15分钟。

答案 1 :(得分:0)

使用EXTRACT获取差异的一般示例。时间戳 - 很难在Dajjal的例子中添加任何内容:

SELECT (end_mm-start_mm) minutes_diff
  FROM
  ( -- can extract hours and seconds the same way --
  SELECT EXTRACT(MINUTE From start_ts) start_mm  
       , EXTRACT(MINUTE From end_ts  ) end_mm
   FROM
  ( -- initial data -- 
  SELECT timestamp '2013-03-22 13:10:55' start_ts
       , timestamp '2013-03-22 13:26:35' end_ts
    FROM dual
  ))
 /

 Output: 16 minutes = 26 -10