Isso não faz sentido. Você está convertendo uma data em uma data novamente. Você usa TO_DATE para converter um literal de string em DATE .
Você pode usar TRUNC para truncar o elemento de tempo. Se você quiser usar esse valor para cálculos de DATA, poderá usá-lo diretamente.
Por exemplo,
SQL> select TRUNC(SYSDATE) dt FROM DUAL;
DT
---------
12-MAR-15
Para exibir em um formato específico, você pode usar TO_CHAR e MÁSCARA DE FORMATO adequada .
SQL> SELECT to_char(SYSDATE, 'DD.MM.YYYY') dt from dual;
DT
----------
12.03.2015
SQL>