Оптимизация просмотра нескольких больших таблиц - PullRequest
0 голосов
/ 14 ноября 2018

У меня есть много больших таблиц с лидарными данными в oracle, и я хочу создать представление, чтобы мои пользователи могли запрашивать их все в одном месте.

Я сделал вид, подобный этому:

CREATE OR REPLACE VIEW SCHEMA.BIGVIEW AS 
SELECT 1 as JD_ID, PT_ID, PT_GEOM, Z_NAVD88
    FROM SCHEMA.V_TABLE1 
    WHERE CONDITIONS_TABLE1
UNION ALL 
SELECT 2 as JD_ID, PT_ID, PT_GEOM, Z_NAVD88
    FROM SCHEMA.V_TABLE2
    WHERE CONDITIONS_TABLE2
UNION ALL 
SELECT 3 as JD_ID, PT_ID, PT_GEOM, Z_NAVD88
    FROM SCHEMA.V_TABLE3
    WHERE CONDITIONS_TABLE3
UNION ALL 
SELECT 4 as JD_ID, PT_ID, PT_GEOM, Z_NAVD88
    FROM SCHEMA.V_TABLE4 
    WHERE CONDITIONS_TABLE4
--(...ETC, 22 TABLES LIKE THIS)
;

И это работает, но довольно медленно ...

Итак, у меня есть 22 таблицы / представления LIDAR с одинаковой структурой, каждая со своими собственными условиями WHERE и многие с миллионами строк.

Интересно, есть ли способ оптимизировать это представление (кроме как его материализовать)?Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...