Като цяло това не е особено добър дизайн - съхраняването на SQL в таблици и динамичното му изпълнение въвежда всякакви проблеми със сигурността и поддръжката.
Вероятно е възможно (въпреки че е твърде късно в петък, който започна твърде рано, за да се опитам да го разбера) да направя наистина страхотна XML заявка по линия на тази заявка, която изпълнява count(*) срещу всяка таблица в схемата което ще направи всичко това в една заявка.
За по-голямата част от програмистите обаче по-простият подход би бил да превъртат заявките, да ги изпълняват една по една и да съхраняват резултатите някъде. Потенциално локалната променлива ще бъде добавена например към колекция от преброявания.
FOR q IN (SELECT sql_text FROM query_table)
LOOP
EXECUTE IMMEDIATE 'SELECT COUNT(*) FROM (' || q.sql_text || ')'
INTO some_local_variable;
<<do something with the local variable>>
END LOOP;
Тъй като се опитвате да създадете изглед, можете да вземете тази логика и да я поставите във функция на конвейерна таблица. Ще направите PIPE ROW
за връщане на данни в рамките на цикъла. Тогава вашият изглед може да бъде създаден върху функцията за конвейерна таблица.