2014-01-15 56 views
0

我有一個表,如下更大的兩個日期的差別所有記錄:如何選擇具有比一些價值

id creation_date      Modify_date 
-- -------------      ----------- 
1  07/JAN/14 10:11:07.243000000 PM 07/JAN/14 10:16:16.865000000 PM 
2  13/JAN/14 12:07:27.603000000 AM 13/JAN/14 12:08:09.955000000 AM 

我要選擇具有的Modify_datecreation_date差別所有ID是大於5分鐘。

請建議如何做到這一點,數據庫是oracle。

回答

0

這人會幫你找解決方案

select id 
    from tab 
where (modify_date - creation_date) >= NUMTODSINTERVAL(5, 'Minute'); 

更改爲任何微小差異NUMTODSINTERVAL(5, 'Minute')

+0

下面查詢還爲我工作: 選擇* 從表名 其中提取物(分鐘從(Modify_date - CREATION_DATE))> = 5 – user3193385

+0

'SELECT * FROM TABLE_NAME其中提取物(分鐘從(Modify_date - CREATION_DATE) )> = 5'有一個缺點,考慮一種情況,如果差異是1小時3分鐘,它不會進入輸出,但它應該,因爲1小時3分鐘大於5分鐘。 – San

0

減去甲骨文結果兩個日期在一天的時間間隔,所以你只需要一些乘法和你所有的設置:

SELECT id 
FROM my_table 
WHERE (modify_date - create_date) * 24 * 60 >= 5 
0

試試這個

Select * from table1 where TIMESTAMPDIFF(MINUTE, creation_date, Modify_date) > 5