CREATE VIEW e CREATE DIALECT VIEW
Uma visualização é uma tabela lógica que pode ser referenciada por futuras consultas. As visualizações não contêm todos os dados e não gravam dados. Em vez disso, a consulta especificada pela exibição é executada sempre que você fizer referência à exibição por outra consulta.
-
CREATE VIEW
cria uma visualização do Athena a partir de uma consultaSELECT
especificada. As visualizações do Athena funcionam dentro do Athena. Para obter mais informações sobre visualizações do Athena, consulte Trabalhar com visualizações. -
CREATE PROTECTED MULTI DIALECT VIEW
cria uma visualização do AWS Glue Data Catalog no AWS Glue Data Catalog. As visualizações do AWS Glue Data Catalog fornecem uma visualização única e comum entre os Serviços da AWS como o Amazon Athena e o Amazon Redshift. Para obter mais informações sobre visualizações do AWS Glue Data Catalog, consulte Usar visualizações do Catálogo de Dados no Athena.
CREATE VIEW
Cria uma visualização para uso no Athena.
Resumo
CREATE [ OR REPLACE ] VIEW view_name AS query
A cláusula OR REPLACE
opcional permite atualizar a exibição existente substituindo-a Para ter mais informações, consulte Criar visualizações.
Exemplos
Para criar uma exibição test
a partir da tabela orders
, use uma consulta semelhante à seguinte:
CREATE VIEW test AS SELECT orderkey, orderstatus, totalprice / 2 AS half FROM orders;
Para criar uma exibição orders_by_date
a partir da tabela orders
, use a seguinte consulta:
CREATE VIEW orders_by_date AS SELECT orderdate, sum(totalprice) AS price FROM orders GROUP BY orderdate;
Para atualizar uma exibição existente, use um exemplo semelhante ao seguinte:
CREATE OR REPLACE VIEW test AS SELECT orderkey, orderstatus, totalprice / 4 AS quarter FROM orders;
Para obter mais informações sobre o uso de visualizações do Athena, consulte Trabalhar com visualizações.
CREATE PROTECTED MULTI DIALECT VIEW
Cria uma visualização do AWS Glue Data Catalog no AWS Glue Data Catalog. Uma visualização do Catálogo de Dados corresponde a um esquema de visualização única que funciona entre o Athena e outros mecanismos de SQL, como o Amazon Redshift e o Amazon EMR.
Sintaxe
CREATE [ OR REPLACE ] PROTECTED MULTI DIALECT VIEW
view_name
SECURITY DEFINER [ SHOW VIEW JSON ] ASquery
- OR REPLACE
-
(Opcional) Atualiza a visualização existente substituindo-a. Uma visualização do Catálogo de Dados não poderá ser substituída se dialetos SQL de outros mecanismos estiverem presentes na visualização. Se o mecanismo de chamada tiver o único dialeto SQL presente na visualização, a visualização poderá ser substituída.
- PROTECTED
-
Palavra-chave obrigatória. Especifica que a visualização está protegida contra vazamentos de dados. As visualizações do Catálogo de Dados podem ser criadas somente como uma visualização
PROTECTED
. - MULTI DIALECT
-
Especifica que a visualização oferece suporte aos dialetos SQL de diferentes mecanismos de consulta e, portanto, que ela pode ser lida por esses mecanismos.
- SECURITY DEFINER
-
Especifica que a semântica do programador está em vigor para essa visualização. A semântica do programador significa que as permissões de leitura efetivas nas tabelas subjacentes pertencem à entidade principal ou ao perfil que definiu a visualização, e não à entidade principal que executa a leitura.
- SHOW VIEW JSON
-
(Opcional) Retorna o JSON para a especificação da visualização do Catálogo de Dados sem realmente criar uma visualização. Essa opção “dry-run” é útil quando você deseja validar o SQL para a visualização e retornar os metadados da tabela que serão usados pelo AWS Glue.
Exemplo
O exemplo apresentado a seguir cria a visualização orders_by_date
do Catálogo de Dados com base em uma consulta na tabela orders
.
CREATE PROTECTED MULTI DIALECT VIEW orders_by_date SECURITY DEFINER AS SELECT orderdate, sum(totalprice) AS price FROM orders WHERE order_city = 'SEATTLE' GROUP BY orderdate
Para obter mais informações sobre o uso de visualizações do AWS Glue Data Catalog, consulte Usar visualizações do Catálogo de Dados no Athena.