web-dev-qa-db-fra.com

date Oracle sql au plus tard aujourd'hui

Je dois afficher certaines données s'il s'agit de - nouvelles données - données mises à jour, disons que je baserai ces données à partir d'une colonne de date de publication et d'une colonne mise à jour où date de publication et date de mise à jour sont des horodatages? . alors comment calculer la date si elle est nouvelle?

20
sasori

Pour les dernières 24 heures:

Where publish_date >= sysdate -1

ou à tout moment aujourd'hui (minuit avant)

where publish_date >= trunc(sysdate)

S'il s'agit d'une grande table, je suppose que vous avez un index sur publish_date. Si vous utilisez trunc (publish_date), il peut ne pas être en mesure d'utiliser l'index (non testé, mais exécutez un plan d'explication pour être sûr).

45
tbone

Essaye ça

Where TRUNC(sysdate) = TRUNC(publish_date)

sysdate renvoie la date du jour avec l'heure. TRUNC supprime la partie temps

10
codingbiz