CREATE VIEW und CREATE PROTECTED MULTI DIALECT VIEW - Amazon Athena

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

CREATE VIEW und CREATE PROTECTED MULTI DIALECT VIEW

Eine Ansicht ist eine logische Tabelle, auf die in future Abfragen verwiesen werden kann. Ansichten enthalten keine Daten und schreiben keine Daten. Stattdessen wird die in der Ansicht angegebene Abfrage jedes Mal ausgeführt, wenn Sie in einer anderen Abfrage auf die Ansicht verweisen.

  • CREATE VIEWerstellt eine Athena-Ansicht aus einer angegebenen SELECT Abfrage. Athena-Ansichten funktionieren innerhalb von Athena. Weitere Informationen zu Athena-Ansichten finden Sie unterArbeiten Sie mit Ansichten.

  • CREATE PROTECTED MULTI DIALECT VIEWerstellt eine AWS Glue Data Catalog Ansicht in der AWS Glue Data Catalog. AWS Glue Data Catalog Ansichten bieten eine einzige gemeinsame Ansicht für Amazon AWS-Services Athena und Amazon Redshift. Weitere Informationen zu AWS Glue Data Catalog Ansichten finden Sie unter. Verwenden Sie Datenkatalogansichten in Athena

CREATE VIEW

Erstellt eine Ansicht zur Verwendung in Athena.

Syntax

CREATE [ OR REPLACE ] VIEW view_name AS query

Mit der optionalen OR REPLACE-Klausel können Sie die vorhandene Ansicht aktualisieren, indem Sie sie ersetzen. Weitere Informationen finden Sie unter Ansichten erstellen.

Beispiele

Verwenden Sie zum Erstellen einer Ansicht test aus der Tabelle orders eine Abfrage wie die folgende:

CREATE VIEW test AS SELECT orderkey, orderstatus, totalprice / 2 AS half FROM orders;

Verwenden Sie zum Erstellen einer Ansicht orders_by_date aus der Tabelle orders die folgende Abfrage:

CREATE VIEW orders_by_date AS SELECT orderdate, sum(totalprice) AS price FROM orders GROUP BY orderdate;

Verwenden Sie zum Aktualisieren einer vorhandenen Ansicht ein Beispiel wie das folgende:

CREATE OR REPLACE VIEW test AS SELECT orderkey, orderstatus, totalprice / 4 AS quarter FROM orders;

Weitere Informationen zur Verwendung von Athena-Ansichten finden Sie unterArbeiten Sie mit Ansichten.

CREATE PROTECTED MULTI DIALECT VIEW

Erstellt eine AWS Glue Data Catalog Ansicht in der AWS Glue Data Catalog. Eine Datenkatalogsicht ist ein Einzelansichtsschema, das in Athena und anderen SQL-Engines wie Amazon Redshift und Amazon EMR funktioniert.

Syntax

CREATE [ OR REPLACE ] PROTECTED MULTI DIALECT VIEW view_name SECURITY DEFINER [ SHOW VIEW JSON ] AS query
OR REPLACE

(Optional) Aktualisiert die bestehende Ansicht, indem sie ersetzt wird. Eine Data-Catalog-Ansicht kann nicht ersetzt werden, wenn in der Ansicht SQL-Dialekte von anderen Engines vorhanden sind. Wenn die aufrufende Engine über den einzigen in der Ansicht vorhandenen SQL-Dialekt verfügt, kann die Ansicht ersetzt werden.

GESCHÜTZT

Erforderliches Schlüsselwort. Gibt an, dass die Ansicht vor Datenverlusten geschützt ist. Data-Catalog-Ansichten können nur als PROTECTED-Ansicht erstellt werden.

MULTI-DIALEKT

Gibt an, dass die Ansicht die SQL-Dialekte unterschiedlicher Abfrage-Engines unterstützt und daher von diesen Engines gelesen werden kann.

SICHERHEITS-DEFINER

Gibt an, dass die Definer-Semantik für diese Ansicht in Kraft ist. Definer-Semantik bedeutet, dass die effektiven Leseberechtigungen für die zugrunde liegenden Tabellen dem Prinzipal oder der Rolle gehören, der die Ansicht definiert hat, und nicht dem Prinzipal, der den tatsächlichen Lesevorgang ausführt.

ZEIGE DIE JSON-ANSICHT AN

(Optional) Gibt das JSON für die Datenkatalog-Ansichtsspezifikation zurück, ohne tatsächlich eine Ansicht zu erstellen. Diese „Dry-Run“ -Option ist nützlich, wenn Sie die SQL-Anweisung für die Ansicht validieren und die zu verwendenden Tabellenmetadaten zurückgeben möchten. AWS Glue

Beispiel

Im folgenden Beispiel wird die Data-Catalog-Ansicht orders_by_date basierend auf einer Abfrage der orders-Tabelle erstellt.

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

Weitere Hinweise zur Verwendung von AWS Glue Data Catalog Ansichten finden Sie unter. Verwenden Sie Datenkatalogansichten in Athena