Да приемем FROMDATE/TODATE типът данни е varchar2 тогава, когато направите to_date;
select to_date('01-JAN-80','dd-mon-yyyy') from dual;
OutPut: January, 01 0080 00:00:00
Така че няма да бъде '01-JAN-2080' но '01-JAN-0080'
Дори ако FROMDATE/TODATE типът данни е date използвайки to_date не е добра идея;
create table t(c date);
insert into t select sysdate from dual;
select c, to_date(c,'dd-mon-yyyy') from t;
Изход:
C TO_DATE(C,'DD-MON-YYYY')
August, 25 2015 10:55:36 August, 25 0015 00:00:00
Все пак годината е 0015 не 2015 .
Ако типът данни на вашите колони е дата, тогава използвайте trunc to get the част от дататаdon't use to_date`.
select *
from tbldeptdivision
where deptid=21
and trunc(sysdate) between trunc(fromdate)
and trunc(todate)