REFRESH MATERIALIZED VIEW#
REFRESH MATERIALIZED VIEW
REFRESH MATERIALIZED VIEW — заменить содержимое материализованного представления
Синтаксис
REFRESH MATERIALIZED VIEW [ CONCURRENTLY ] name
[ WITH [ NO ] DATA ]
Описание
Содержимое команды REFRESH MATERIALIZED VIEW
полностью заменяет содержимое материализованного представления. Для выполнения этой команды вы должны быть владельцем материализованного представления. Старое содержимое удаляется. Если указано (или используется значение по умолчанию) WITH DATA
, выполняется запрос, чтобы получить новые данные, и материализованное представление остается в состоянии, доступном для сканирования. Если указано WITH NO DATA
, новые данные не генерируются, и материализованное представление остается в состоянии, недоступном для сканирования.
CONCURRENTLY
и WITH NO DATA
нельзя указать вместе.
Параметры
CONCURRENTLY
Обновите материализованное представление без блокировки одновременных выборок из материализованного представления. Без этой опции обновление, которое затрагивает много строк, будет использовать меньше ресурсов и завершаться быстрее, но может блокировать другие соединения, которые пытаются читать из материализованного представления. Эта опция может быть быстрее в случаях, когда затрагивается небольшое количество строк.
Этот параметр разрешен только в том случае, если на материализованном представлении есть хотя бы один индекс
UNIQUE
, который использует только имена столбцов и включает все строки; то есть, он не должен быть индексом выражения или содержать предложениеWHERE
.Этот параметр не может быть использован, если материализованное представление еще не заполнено.
Даже с этой опцией только одна
REFRESH
может выполняться одновременно для любого материализованного представления.name
Имя (опционально с указанием схемы) материализованного представления для обновления.
Примечания
Если в определении материализованного представления присутствует
предложение ORDER BY
, то исходное содержимое материализованного представления
будет упорядочено таким образом; однако REFRESH MATERIALIZED
VIEW
не гарантирует сохранение этого порядка.
Примеры
Эта команда заменит содержимое материализованного представления с именем
order_summary
с использованием запроса из определения материализованного
представления и оставит его в состоянии, пригодном для сканирования:
REFRESH MATERIALIZED VIEW order_summary;
Эта команда освободит память, связанную с материализованным представлением annual_statistics_basis
и оставит его в непросматриваемом состоянии:
REFRESH MATERIALIZED VIEW annual_statistics_basis WITH NO DATA;
Совместимость
REFRESH MATERIALIZED VIEW
- это расширение Tantor BE.