2011-07-07 43 views
4

我正在尝试编写查询以在Oracle数据库上运行。表ActionTable包含actionStartTime和actionEndTime列。我需要找出哪个操作花费了1个多小时才能完成。Oracle时间戳差异大于X小时/天/月

actionStartTime和actionEndTime是时间戳类型的

我有一个查询这使我对各行动的时候了:

select (actionEndTime - actionStartTime) actionDuration from ActionTable 

什么是我的where条款,将只返回所花的时间行动比1小时完成?

回答

11

减去两个时间戳会返回一个时间间隔。所以你想要像

SELECT (actionEndTime - actionStartTime) actionDuration 
    FROM ActionTable 
WHERE actionEndTime - actionStartTime > interval '1' hour 
+0

我错过了数据类型。我删除了我的答案,并提出了你的答案。 – Olaf