2012-08-25 23 views
13

que necesito para mostrar algunos datos si es un - nuevos datos - los datos actualizados digamos, voy a estar basando estos datos de una columna publishdate y actualiza la columna donde publishdate y updateddate son a la vez marcas de tiempo? . Entonces, ¿cómo calcular la fecha si es una nueva?oráculo fecha sql a más tardar hoy

+0

No está claro lo que quiere. ¿Puedes describir mejor? – codingbiz

+0

tengo una columna de fecha de publicación, y quiero mostrar los datos que están publicados en este día, y no los que se publicaron ayer ni antes – sasori

Respuesta

34

Para últimas 24 horas:

Where publish_date >= sysdate -1 

o en cualquier momento hoy (medianoche hacia adelante)

where publish_date >= trunc(sysdate) 

Si se trata de una gran mesa, que se supone que tiene un índice de fecha de publicación. Si usa trunc (publish_date), es posible que no pueda usar el índice (no probado, pero ejecute un plan de explicación para estar seguro).

+1

wuhuuuu! funciona perfecto +1 –

+0

sysdate -1 ... agradable: D – GedankenNebel

8

probar este

Where TRUNC(sysdate) = TRUNC(publish_date) 

sysdate devuelve fecha de hoy con el tiempo. El TRUNC quita la pieza del tiempo

+0

No quiero estropear un -1, pero como @tbone explicó, usando 'TRUNC (publish_date) 'es probablemente una mala idea y un asesino de rendimiento en esta situación –

Cuestiones relacionadas