CREATE VIEW ( )DLT
Constrói uma tabela virtual sem dados físicos com base no conjunto de resultados de uma consulta SQL em seu pipeline DLT.
Sintaxe
A seguir, descrevemos a sintaxe para declarar a visualização com SQL:
CREATE VIEW view_name
[ COMMENT view_comment ]
[ TBLPROPERTIES ]
AS query
Parâmetros
-
visualização
O nome do site view. O nome deve ser exclusivo dentro do catálogo e do esquema visado pelo pipeline.
-
visualização
Uma descrição opcional para o site view.
-
PROPRIEDADES DA TABELA
Uma lista opcional de propriedades da tabela.
-
query
Uma consulta que constrói o site view a partir de tabelas de base ou outra exibição.
Permissões necessárias
O usuário executor do pipeline deve ter as seguintes permissões para poder criar um view:
- Privilégio SELECT nas tabelas de base referenciadas pelo site view.
- O privilégio USE CATALOG no catálogo pai e o privilégio USE SCHEMA no esquema pai.
- CREATE TABLE privilégio no esquema do site view.
Para que um usuário possa atualizar o view no pipeline, ele deve ter as seguintes permissões:
- O privilégio USE CATALOG no catálogo pai e o privilégio USE SCHEMA no esquema pai.
- Gerenciar a permissão para o site view.
- Privilégios SELECT nas tabelas de base referenciadas pelo site view.
Para que um usuário possa consultar o view resultante, ele deve ter as seguintes permissões:
- O privilégio USE CATALOG no catálogo pai e o privilégio USE SCHEMA no esquema pai.
- Privilégio SELECT no site view.
Limitações
CREATE VIEW
só está disponível no pipeline que suporta o modo de publicação default. O pipeline que usa o esquema LIVE (legado) não é compatível. Para obter mais informações, consulte LIVE schema (legado).- O pipeline deve ser um pipeline do Unity Catalog.
- As expectativas, na forma de cláusulas
CONSTRAINT
, não são suportadas. - A visualização não pode ter consultas de transmissão ou ser usada como uma fonte de transmissão para um DLT pipeline.
Exemplos
-- Create a view from an external data source
CREATE VIEW taxi_raw AS SELECT *
FROM read_files("/databricks-datasets/nyctaxi/sample/json/");
-- Use a view to create a filtered view:
CREATE VIEW taxi_silver AS SELECT *
FROM taxi_raw
WHERE distance > 0.0;