i am using oracle 10gR2 i first queried this and have a result SQL> select TO_DATE('01-feb-2007','DD-MM-YYYY') from dual; TO_DATE(' --------- 01-FEB-07 Strange pasrt goes here, SQL> select tr_date from rm_purchase_header where TR_DATE > TO_DATE('01-feb-2007 ','DD-MM-YYYY'); no rows selected See no rows selected, it looks like doesn't return anything, but if you noticed that i changed from 2007 to 07 and... SQL> select tr_date from rm_purchase_header where TR_DATE > TO_DATE('01-feb-07', 'DD-MM-YYYY'); TR_DATE --------- 10-DEC-07 09-DEC-07 Wlahhhh! it works but how come oracle takes this as a differ?