Ну, нет поддерживаемого способа сделать это, поскольку представление должно основываться на некоторых таблицах.
Кроме того, индексированные представления не предназначены для такого использования.Вам не нужно вставлять какие-либо данные в индексное представление , думая , что вы ускорите поиск данных.
Я предлагаю вам сохранить свой взгляд таким, какой он есть.И затем создайте промежуточную таблицу, в которой созданы соответствующие индексы, в которую вы вставляете данные, поступающие из внешней системы.
Промежуточная таблица должна быть обрезана в любое время, когда вы хотите избавиться от данныхпрямо перед вставкой новых данных).Это должно быть сделано в транзакции SNAPSHOT ISOLATION
, чтобы ваши существующие запросы не считывали грязные данные или взаимоблокировку.
Тогда у вас есть два варианта:
- Используйте предложение
UNION ALL
, чтобы объединить результаты из представления и промежуточной таблицы, когда вы хотите получить свои данные. - Если промежуточная таблица не должна объединяться, а должна объединяться внутри, то, возможно, вы можете интегрировать ее в индексированное представление.