Лучший способ периодически запускать запросы Oracle

Мне нужно знать, как лучше всего выполнять запрос периодически в Oracle (я использую11g).

В моем конкретном случае использования у меня естьDUE_DATE указано в таблицеx, Что я хочу сделать, так это запускать запрос в 00:01 каждый день, чтобы вычислить состояние (ОК, Предупреждать, Критическое или Просрочено) некоторых записей. Статус конкретной записи вычисляется по сегодняшней дате (где «сегодня» - день, когда выполняется запрос) относительноx.DUE_DATE и некоторые пользовательские значения для того, что означает «предупредить»; и «критический»; (содержится в таблицеy).

OK --> today < x.DUE_DATE - y.WARN Warn --> today >= x.DUE_DATE - y.WARN and today < x.DUE_DATE - y.CRITICAL Critical --> today >= x.DUE_DATE - y.CRITICAL and today <= x.DUE_DATE Overdue --> today > x.DUE_DATE

Каков наилучший способ периодически выполнять этот запрос? Я нашел следующие варианты, но не уверен, что лучше всего подходит для моего случая использования:

Materialized Views DBMS_SCHEDULER

Я знаю, что мог бы просто динамически вычислять статус при каждом запросе пользователя, но, поскольку статусы меняются только раз в день, я подумал, что было бы более эффективно выполнять вычисления и кэшировать последующий результат также раз в день.

Спасибо заранее.

Ответы на вопрос(2)

Ваш ответ на вопрос