Abbiamo una tabella con una colonna DATE d.Oracle: confronta le date solo per l'ora
Mi piacerebbe ottenere tutte le righe in cui la colonna d è maggiore/minore di qualche valore, indipendentemente dalla data.
Per esempio
| d |
-------------------
|2009/11/1 15:55:23|
--------------------
|2009/11/2 15:55:23|
--------------------
|2009/11/3 15:55:23|
--------------------
|2009/11/3 17:55:23|
--------------------
Per esempio, se voglio tutti i record segnati dopo 5:00:
select d
from my_table
where extract(hour from d) > TO_DATE ('17:00:00','HH24:MI:SS')
Ciò dovrebbe restituire un solo record
|2009/11/3 17:55:23|
I don' so se questo è il modo migliore per farlo, ma ottengo un errore sulla funzione di estrazione:
ORA-30076: invalid extract field for extract source
Cause: The extract source does not contain the specified extract field.
C'è un modo migliore per farlo? Che cosa è successo con quell'errore? estratto disponibile solo per sysdate, come in tutti gli esempi che ho trovato?
Grazie in anticipo
Così hai trovato una soluzione generica, lavorando con il campo ORA e EXTRACT? Ho bisogno di una soluzione cross DBMS compatibile per questo. –