Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie kann ich NUR Datensätze von gestern auswählen?

Verwendung:

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

Referenz:TRUNC

Aufruf einer Funktion am tran_date bedeutet, dass der Optimierer einen ihm zugeordneten Index (vorausgesetzt, es existiert einer) nicht verwenden kann. Einige Datenbanken, wie z. B. Oracle, unterstützen funktionsbasierte Indizes, die es ermöglichen, Funktionen an den Daten auszuführen, um die Auswirkungen in solchen Situationen zu minimieren, aber IME-DBAs lassen diese nicht zu. Und ich stimme zu - sie sind in diesem Fall nicht wirklich notwendig.