Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment puis-je sélectionner UNIQUEMENT les enregistrements d'hier ?

Utiliser :

AND oh.tran_date BETWEEN TRUNC(SYSDATE - 1) AND TRUNC(SYSDATE) - 1/86400

Référence :TRUNC

Appel d'une fonction sur le tran_date signifie que l'optimiseur ne pourra pas utiliser un index (en supposant qu'il en existe un) qui lui est associé. Certaines bases de données, telles qu'Oracle, prennent en charge les index basés sur des fonctions qui permettent d'exécuter des fonctions sur les données afin de minimiser l'impact dans de telles situations, mais les administrateurs de base de données IME ne les autorisent pas. Et je suis d'accord - ils ne sont pas vraiment nécessaires dans ce cas.