Use TRUNC(date_variable) when you want to extract a date from a timestamp
SQL> SQL> DECLARE 2 d DATE := SYSDATE; 3 BEGIN 4 dbms_output.put_line(TO_CHAR(TRUNC(d),'DD-MON-YY HH24:MI:SS')); 5 END; 6 / 26-OCT-09 00:00:00 PL/SQL procedure successfully completed. SQL>