V Oracle je DATE časovým bodem. Vždy má časovou složku s přesností na sekundu. todate('08-Jun-2010', 'dd-Mon-yyyy')
je v Oracle stejné jako todate('08-Jun-2010 00:00:00', 'dd-Mon-yyyy hh24:mi:ss')
. Pokud tedy vyberete řádky do tohoto data, nezískáte v daný den žádný řádek s časovou složkou, která se nerovná 00:00
.
Pokud chcete vybrat všechny řádky do 08-JUN-2010
včetně , doporučil bych použít:
< to_date('09-06-2010', 'dd-MM-yyyy')
nebo
<= to_date('08-06-2010 23:59:59', 'dd-MM-yyyy hh24:mi:ss')
Poznámka - Opravil jsem váš formát data:musíte použít MON
chcete-li použít zkrácený název měsíce. Doporučuji použít MM
místo toho, abyste nedostali chybu, když někdo změní nastavení klienta (NLS_DATE_LANGUAGE
). Preferujte také použití YYYY
místo YY
.