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 .