Oracle
 sql >> Database >  >> RDS >> Oracle

MENO O UGUALE A IN Oracle SQL

In Oracle una DATA è un punto nel tempo. Ha sempre una componente temporale con una precisione al secondo. todate('08-Jun-2010', 'dd-Mon-yyyy') è in Oracle uguale a todate('08-Jun-2010 00:00:00', 'dd-Mon-yyyy hh24:mi:ss') . Quindi se selezioni le righe fino a quella data non otterrai nessuna riga in quel giorno con una componente temporale diversa da 00:00 .

Se vuoi selezionare tutte le righe fino a 08-JUN-2010 incluso , suggerirei di utilizzare:

< to_date('09-06-2010', 'dd-MM-yyyy')

o

<= to_date('08-06-2010 23:59:59', 'dd-MM-yyyy hh24:mi:ss')

Nota - Ho corretto il formato della tua data:devi usare MON se si desidera utilizzare il nome abbreviato del mese. Suggerirei di usare MM invece, in modo da non ricevere errori quando qualcuno modifica le impostazioni del client (NLS_DATE_LANGUAGE ). Preferisci anche l'uso di YYYY invece di YY .