To nie ma sensu. Znowu konwertujesz datę na datę. Używasz TO_DATE przekonwertować literał ciągu na DATE .
Możesz użyć TRUNC skrócić element czasu. Jeśli chcesz użyć tej wartości do obliczeń DATE, możesz użyć jej bezpośrednio.
Na przykład
SQL> select TRUNC(SYSDATE) dt FROM DUAL;
DT
---------
12-MAR-15
Aby wyświetlić w określonym formacie, możesz użyć TO_CHAR i właściwa MASKA FORMATU .
SQL> SELECT to_char(SYSDATE, 'DD.MM.YYYY') dt from dual;
DT
----------
12.03.2015
SQL>