CREATE MATERIALIZED VIEW
CREATE MATERIALIZED VIEW — определить новое материализованное представление
Синтаксис
CREATE MATERIALIZED VIEW [ IF NOT EXISTS ] имя_таблицы
[ (имя_столбца [, ...] ) ]
[ USING метод ]
[ WITH ( параметр_хранения [= значение] [, ... ] ) ]
[ TABLESPACE имя_табличного_пространства ]
AS запрос
[ WITH [ NO ] DATA ]
Описание
Команда CREATE MATERIALIZED VIEW
определяет материализованное
представление запроса. Запрос выполняется и используется для заполнения
представления во время выполнения команды (если только не указано WITH NO DATA).
Обновить представление позже можно, выполнив REFRESH MATERIALIZED VIEW
.
Команда CREATE MATERIALIZED VIEW
подобна CREATE TABLE AS
, за
исключением того, что она еще и запоминает запрос, используемый для
инициализации представления, чтобы его можно было обновить позже по
требованию. Материализованное представление по многим свойствам сходно с таблицей,
но в нём не поддерживаются временные материализованные представления.
Параметры
IF NOT EXISTS
Не выдавать ошибку, если материализованное представление с таким же именем уже существует. В этом случае выдается соответствующее уведомление. Обратите внимание, что нет никакой гарантии, что существующее материализованное представление как-то соотносится с тем, которое было бы создано.
имя_таблицы
Имя создаваемого материализованного представления (может быть дополнено схемой).
имя_столбца
Имя столбца в новом материализованном представлении. Если имена столбцов не указаны, они берутся из имен столбцов результата запроса.
USING метод
Это необязательное предложение определяет метод доступа к таблице, используемый для хранения содержимого для нового материализованного представления; этот метод должен быть типа TABLE. Дополнительную информацию см. в главе Определение интерфейса метода доступа к таблице. Если этот параметр не указан, то для нового материализованного представления выбирается метод доступа к таблице по умолчанию. Дополнительную информацию см. в разделе default_table_access_method.
WITH ( параметр_хранения [= значение] [, ... ] )
В этом предложении указываются необязательные параметры хранения для
нового материализованного представления; дополнительную информацию см. в
разделе Параметры хранения описания команды CREATE TABLE. Все параметры, которые поддерживает CREATE TABLE
, поддерживает и
CREATE MATERIALIZED VIEW
. Дополнительную информацию см. в разделе CREATE TABLE.
TABLESPACE имя_табличного_пространства
имя_табличного_пространства — это имя табличного пространства, в котором будет создано новое материализованное представление. Если не указано, то выбирается default_tablespace.
запрос
Команда SELECT, TABLE или VALUES. Этот запрос будет выполняться в рамках операции с ограничениями безопасности; в частности, вызовы функций, которые сами создают временные таблицы, завершатся ошибкой.
WITH [ NO ] DATA
Это предложение указывает, следует ли заполнять материализованное
представление во время его создания. Если материализованное представление
не наполняется, оно помечается как нечитаемое, так что к нему нельзя
будет обращаться до выполнения REFRESH MATERIALIZED VIEW
.
Совместимость
Команда CREATE MATERIALIZED VIEW
является расширением QHB.
См. также
ALTER MATERIALIZED VIEW, CREATE TABLE AS, CREATE VIEW, DROP MATERIALIZED VIEW, REFRESH MATERIALIZED VIEW