sql >> Database >  >> RDS >> Oracle

Wanneer ik een dateadd- of datediff-code invoer, krijg ik deze fout de hele tijd ORA-00904 DATEADD INVALID IDENTIFIER.

De typische manier om dit in Oracle te doen zou zijn:

DELETE FROM patient
 WHERE dis_date < TRUNC(ADD_MONTHS(SYSDATE, -7*12));

De reden waarom ik voorstel om ADD_MONTHS() te gebruiken in plaats van jaarintervallen is dat ADD_MONTHS() is schrikkeljaar veilig.



  1. Schending integriteitsbeperking:1452 laravel

  2. SQL-join naar gecorreleerde subquery waar tabellen zijn gerelateerd door overlappende bereiken

  3. Hoe id met max datumgroep per categorie selecteren in PostgreSQL?

  4. Hoe SUBTIME() werkt in MariaDB