CREATE MATERIALIZED VIEW#
CREATE MATERIALIZED VIEW
CREATE MATERIALIZED VIEW — определить новый материализованный вид
Синтаксис
CREATE MATERIALIZED VIEW [ IF NOT EXISTS ]table_name
[ (column_name
[, ...] ) ] [ USINGmethod
] [ WITH (storage_parameter
[=value
] [, ... ] ) ] [ TABLESPACEtablespace_name
] ASquery
[ WITH [ NO ] DATA ]
Описание
CREATE MATERIALIZED VIEW
определяет материализованный вид запроса. Запрос выполняется и используется для заполнения вида в момент выполнения команды (если не используется WITH NO DATA
) и может быть обновлен позже с помощью REFRESH MATERIALIZED VIEW
.
CREATE MATERIALIZED VIEW
похож на
CREATE TABLE AS
, за исключением того, что он также запоминает запрос, используемый
для инициализации вида, чтобы его можно было обновить позже по требованию.
Материализованный вид имеет множество свойств, аналогичных таблице, но не поддерживает временные материализованные виды.
CREATE MATERIALIZED VIEW
требует наличия привилегии CREATE
на схему, используемую для материализованного представления.
Параметры
IF NOT EXISTS
Не генерировать ошибку, если уже существует материализованное представление с таким же именем. В этом случае будет выдано уведомление. Обратите внимание, что не гарантируется, что существующее материализованное представление будет похоже на то, которое было бы создано.
table_name
Имя (опционально с указанием схемы) материализованного представления, которое будет создано. Имя должно отличаться от имени любого другого отношения (таблицы, последовательности, индекса, представления, материализованного представления или внешней таблицы) в той же схеме.
column_name
Имя столбца в новом материализованном представлении. Если имена столбцов не указаны, они берутся из имен выходных столбцов запроса.
USING
method
Этот необязательный параметр указывает метод доступа к таблице, который будет использоваться для хранения содержимого нового материализованного представления; метод должен быть методом доступа типа
TABLE
. См. Глава 60 для получения дополнительной информации. Если этот параметр не указан, для нового материализованного представления выбирается метод доступа к таблице по умолчанию. См. default_table_access_method для получения дополнительной информации.WITH (
storage_parameter
[=value
] [, ... ] )Это предложение определяет необязательные параметры хранения для нового материализованного представления; см. Storage Parameters в документации CREATE TABLE для получения дополнительной информации. Все параметры, поддерживаемые для
CREATE TABLE
, также поддерживаются дляCREATE MATERIALIZED VIEW
. См. CREATE TABLE для получения дополнительной информации.TABLESPACE
tablespace_name
tablespace_name
- это имя табличного пространства, в котором будет создана новая материализованная представление. Если не указано, будет использовано значение default_tablespace.query
Команда
SELECT
,TABLE
илиVALUES
. Этот запрос будет выполняться в рамках операции с ограниченными правами доступа; в частности, вызовы функций, которые сами создают временные таблицы, будут завершаться неудачей.WITH [ NO ] DATA
Это предложение определяет, должно ли материализованное представление быть заполненным во время создания. Если нет, то материализованное представление будет помечено как неподдающееся сканированию и не может быть запрошено до использования команды
REFRESH MATERIALIZED VIEW
.
Совместимость
CREATE MATERIALIZED VIEW
- это расширение Tantor BE.