Как мы обрабатываем только те данные, которые были в последний раз обновлены в просмотре Materialise

Мы используем Mview для извлечения некоторых данных из другой таблицы БД в нашу БД. Нам нужно выполнить 2 основные задачи

1. Здесь нам нужно обновить MView в определенное время (т.е. 6 утра и 7 вечера EST).

2. У нас есть другая хранимая процедура, которая использует эти данные и выполняет некоторую вставку. Но клиенту нужны только данные, которые должны обрабатываться на основе столбца DATE в MVIEW. Т.е. нужно вставить только последнюю вставленную запись или данные, обновленные после последнего обновления MVIEW.

CREATE MATERIALIZED VIEW PPM_TFS_RECEIVED_MVIEW
BUILD IMMEDIATE 
REFRESH COMPLETE
ON DEMAND
 START WITH SYSDATE
 NEXT SYSDATE + 1/12
 AS select * from v_TFSTaskIntegration@LHRxxx0D;

На данный момент я сделал обновление каждые 2 часа, которые мне нужно изменить. Мой вопрос: как мы получаем последние данные / время MVIEW и как мы сохраняем то же самое, чтобы получить данные, которые были> повторно рассчитаны? Пожалуйста, помогите мне разобраться с этим, так как это было для нас невежественным.

Спасибо раш

1 ответ

Я получил решение сам после помощи из других источников!

CREATE MATERIALIZED VIEW TEST_DATA_RASH_MVIEW
 BUILD IMMEDIATE 
REFRESH COMPLETE
ON DEMAND
 START WITH SYSDATE
 NEXT SYSDATE + 1/12
 AS
select * from PPM_TFS_RECEIVED_MVIEW
where  "CreatedDate" > (SELECT last_refresh FROM ALL_MVIEW_REFRESH_TIMES WHERE NAME='PPM_TFS_RECEIVED_MVIEW');
Другие вопросы по тегам