Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Quando insiro um código dateadd ou datediff, recebo esse erro o tempo todo ORA-00904 DATEADD INVALID IDENTIFIER.


A maneira típica de fazer isso no Oracle seria:
DELETE FROM patient
 WHERE dis_date < TRUNC(ADD_MONTHS(SYSDATE, -7*12));

A razão pela qual sugiro usar ADD_MONTHS() em vez de intervalos de ano é que ADD_MONTHS() é seguro para anos bissextos.