Das ist wahrscheinlich nicht der richtige Ansatz. Ich meine, Sie könnten ein Ereignis einrichten, das für jede Zeile verarbeitet wird, aber das könnte Ihrer Datenbank viel Last hinzufügen.
Stattdessen, wenn status
bedeutet lediglich, dass die Zeile weniger oder mehr als einen Tag alt ist, geben Sie ein Erstellungsdatum in die Tabelle ein und verwenden Sie eine Ansicht:
create view v_table as
select t.*, (creation_date >= date_sub(now(), interval 1 day) as status
from table t;
Wenn status
auf andere Weise geändert werden kann, nennen Sie es dann so etwas wie _status
und tun:
create view v_table as
select t.*,
(case when creation_date >= date_sub(now(), interval 1 day then 1 else _status end) as status
from table t;