sql >> Base de Datos >  >> RDS >> Oracle

Oracle DateTime en la cláusula Where?

Sí:TIME_CREATED contiene una fecha y una hora . Usa TRUNC para desnudar el tiempo:

SELECT EMP_NAME, DEPT
FROM EMPLOYEE
WHERE TRUNC(TIME_CREATED) = TO_DATE('26/JAN/2011','dd/mon/yyyy')

ACTUALIZACIÓN:
Como señala Dave Costa en el comentario a continuación, esto evitará que Oracle use el índice de la columna TIME_CREATED si existiera. Un enfoque alternativo sin este problema es este:

SELECT EMP_NAME, DEPT
FROM EMPLOYEE
WHERE TIME_CREATED >= TO_DATE('26/JAN/2011','dd/mon/yyyy') 
      AND TIME_CREATED < TO_DATE('26/JAN/2011','dd/mon/yyyy') + 1