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

Comment comparer deux valeurs DATE basées uniquement sur la partie date dans Oracle ?

Pour cette condition, il vous suffit de TRONQUER le côté droit :

WHERE date_occured >= TRUNC(CURRENT_DATE - 30)

Pourquoi? Parce que si TRUNC(date_occured) est postérieur à TRUNC(CURRENT_DATE - 30), alors tout moment après TRUNC(date_occured) est forcément postérieur à TRUNC(CURRENT_DATE - 30).

Il est évidemment toujours vrai que date_occured>=TRUNC(date_occured) (pensez-y).

La logique dit que si A>=B et B>=C alors il s'ensuit que A>=C

Remplacez maintenant :

  • A :date_occured
  • B :TRUNC(date_occured)
  • C :TRUNC(CURRENT_DATE - 30)