2009-05-20 13 views
23

Devo ottenere dati da Oracle Table in cui ho un campo di date chiamato lastupdatedDate e voglio recuperare solo quelle righe in cui lastupdatedDate è negli ultimi 10 minuti di sysdateQuery Oracle per ottenere dati dalla tabella inserita negli ultimi 10 minuti

Per esempio, se nel mio tavolo ho lastupdateDate come 05/20/09 4:20:44 poi voglio questa riga nel mio risultato se corro la query tra 05/20/09 4:20:44 e 05/20/09 4:30:44, e se non se corro la query al 05/20/09 5:31:44.

risposta

17
select * 
from mytable 
where lastupdatedDate > sysdate - (10/1440) 
+0

Mentre questo produce la risposta corretta. Preferirei la leggibilità della risposta di @ rob-van-wijk su questo ogni giorno. –

7
select sysdate - 10/(24*60) from dual; 

Vedi sopra esempio per ottenere sysdate meno di dieci minuti, ora basta aggiungere alla tua richiesta

45

o leggermente più leggibile:

select * 
    from mytable 
where lastupdatedDate > sysdate - interval '10' minute 
+1

Dev friendly :) – Aravin

+0

questa dovrebbe essere la risposta accettata: | – MaxG

Problemi correlati