Вместо того, чтобы запускать процедуру для постоянного обновления таблицы «R», создайте представление базы данных. Это представление объединяло бы A, B и C вместе.
Затем, в любое время, когда вам нужно запросить A, B и C, вместо того, чтобы рисковать получать устаревшие данные, запросив таблицу R, вы запросите представление.
Я не знаю вашу схему базы данных, поэтому я не знаю, какие поля присоединяются к таблицам A, B и C, но может выглядеть примерно так:
CREATE VIEW V1
AS
SELECT * FROM A INNER JOIN B ON A.X = B.X INNER JOIN C ON B.Y = C.Y;
Чтобы запросить представление, вы должны использовать SELECT
оператор так же, как и для таблицы:
SELECT * FROM V1;