Oracle SQL cómo eliminar el time desde la date

Tengo una columna llamada StartDate contiene una date en este formatting: 03-03-2012 15:22

Lo que necesito es convertirlo a la date. Debería lucir así: DD/MM/YYYY

Lo que he intentado sin éxito es:

 select p1.PA_VALUE as StartDate, p2.PA_VALUE as EndDate from WP_Work p LEFT JOIN PARAMETER p1 on p1.WP_ID=p.WP_ID AND p1.NAME = 'StartDate' LEFT JOIN PARAMETER p2 on p2.WP_ID=p.WP_ID AND p2.NAME = 'Date_To' WHERE p.TYPE = 'EventManagement2' AND TO_DATE(p1.PA_VALUE, 'DD/MM/YYYY') >= TO_DATE('25/10/2012', 'DD/MM/YYYY') AND TO_DATE(p2.PA_VALUE, 'DD/MM/YYYY') <= TO_DATE('26/10/2012', 'DD/MM/YYYY') 

¿Hay alguna forma de hacer esto?

EDIT1: la columna PA_VALUE es: VARCHAR2

Cuando convierte su cadena a una date, necesita hacer coincidir la máscara de date con el formatting de la cadena. Esto incluye un elemento de time, que debe eliminar con el truncamiento:

 select p1.PA_VALUE as StartDate, p2.PA_VALUE as EndDate from WP_Work p LEFT JOIN PARAMETER p1 on p1.WP_ID=p.WP_ID AND p1.NAME = 'StartDate' LEFT JOIN PARAMETER p2 on p2.WP_ID=p.WP_ID AND p2.NAME = 'Date_To' WHERE p.TYPE = 'EventManagement2' AND trunc(TO_DATE(p1.PA_VALUE, 'DD-MM-YYYY HH24:MI')) >= TO_DATE('25/10/2012', 'DD/MM/YYYY') AND trunc(TO_DATE(p2.PA_VALUE, 'DD-MM-YYYY HH24:MI')) <= TO_DATE('26/10/2012', 'DD/MM/YYYY') 

Puede usar TRUNC en DateTime para eliminar la parte Time de DateTime. Entonces tu cláusula where puede ser:

 AND TRUNC(p1.PA_VALUE) >= TO_DATE('25/10/2012', 'DD/MM/YYYY') 

La function TRUNCATE (datetime) devuelve la date con la porción de time del día truncada a la unidad especificada por el model de formatting.

Tratar

 SELECT to_char(p1.PA_VALUE,'DD/MM/YYYY') as StartDate, to_char(p2.PA_VALUE,'DD/MM/YYYY') as EndDate ...