Podrías crear otra tabla
User_warnings:
user_id
warn_timestamp
Siempre que el usuario sea advertido , primero elimina todas las entradas que tengan más de 30 días y luego verifica si aún existen dos o más advertencias. Prohibir al usuario entonces.
Si desea un historial de todas las advertencias, no elimine las advertencias antiguas, solo consulte las advertencias de los últimos 30 días.
De esta manera, no tiene que disminuir todos los días, solo debe verificar cuando aparece otra advertencia.