поверх обычной вьюшки?
Ситуация - есть таблица на 2 миллиарда строк, поверх неё наложена вьюшка, которая немного преобразует столбцы, а количество строк оставляет как есть.
Стоит задача рассчитать и положить на диск пару группировок по уже преобразованным данным.
Хочу решить задачу через материализованные представления, но не получается их заставить "смотреть" на вьюшку,
а копировать логику преобразования полей в мат. представления тоже как-то не хочется.
А как вы хотите это сделать с уже существующими даннымив таблице через мат вью? Оно не читает исходную таблицу, это триггер на инсерт, оно будет будет читать те небольшие блоки данных, что вы вставляете в эту таблицу, не более того. Чем вам не подходит insert select из вашей вью в соседнюю таблицу?
я понимаю, что группировка будет не окончательной, но хоть что-то будет сгруппировано, мне не хватает только способа при вставке данных в исходную таблицу обратиться к вьюшке :)
Либо вы что-то неправильно понимаете, либо я вас
Вьюшка это сохранённый синтаксис при селекте
:) да, такое может быть... пойду дальше думать над постановкой задачи, спасибо :)
Расскажите, куда вы хотите положить результаты преобразования?
Есть таблица А, над ней есть вьюшка B, которая меняет набор полей, но не меняет количество строк. Я хочу при вставке в таблицу А отправлять в отдельную таблицу C результат обращения к вьюшке В. Понятно, что можно написать мат.вьюшку над таблицей А, но в ней придётся повторять всю логику изменения полей, которая уже прописана во вьюшке В, вот этого я и хочу избежать
Обычная view - это "сохранённый запрос на чтение к таблице". К записи туда он никакого отношения не имеет. Поэтому использовать его в матвью(триггере на вставку) не получится
я конечно подозревал что всё так и есть, но мечтать не вредно :)
может проще projections прикрутить вместо mat view в таком случае вместе с преобразованиями?
интересная идея, про projection я не думал... пойду читать документацию
Обсуждают сегодня