Sdílet prostřednictvím


CREATE VIEW (potrubí)

Vytvoří virtuální tabulku bez fyzických dat na základě výsledkové sady SQL dotazu v datovém kanálu.

Syntaxe

Následující popis syntaxe pro deklarování zobrazení pomocí SQL:

CREATE VIEW view_name
  [ COMMENT view_comment ]
  [ TBLPROPERTIES ]
  AS query

Parametry

  • view_name

    Název zobrazení. Název musí být jedinečný v rámci katalogu a schématu, k němuž je pipeline směrována.

  • view_comment

    Volitelný popis zobrazení.

  • TBLPROPERTIES

    Volitelný seznam vlastností tabulky pro tabulku.

  • dotaz

    Dotaz, který sestaví zobrazení ze základních tabulek nebo jiných zobrazení.

Požadovaná oprávnění

Aby bylo možné vytvořit zobrazení, musí mít uživatel pro spuštění kanálu následující oprávnění:

  • SELECT oprávnění k základním tabulkám, na které odkazuje zobrazení.
  • USE CATALOG privilegium v nadřazeném katalogu a USE SCHEMA privilegium v nadřazeném schématu.
  • CREATE TABLE oprávnění ke schématu zobrazení.

Aby uživatel mohl aktualizovat zobrazení v rámci kanálu, musí mít následující oprávnění:

  • USE CATALOG privilegium v nadřazeném katalogu a USE SCHEMA privilegium v nadřazeném schématu.
  • Oprávnění pro spravování zobrazení.
  • SELECT oprávnění k základním tabulkám, na které odkazuje zobrazení.

Aby uživatel mohl dotazovat výsledné zobrazení, musí mít následující oprávnění:

  • USE CATALOG privilegium v nadřazeném katalogu a USE SCHEMA privilegium v nadřazeném schématu.
  • SELECT oprávnění k zobrazení.

Omezení

  • CREATE VIEW je k dispozici pouze v kanálech, které podporují výchozí režim publikování. Kanály, které používají schéma LIVE (starší verze), se nepodporují. Další informace viz ŽIVÉ schéma (starší verze).
  • Datový kanál musí být kanálem katalogu Unity.
  • Očekávání ve formě CONSTRAINT klauzulí nejsou podporována.
  • Zobrazení nemohou obsahovat dotazy streamování ani je použít jako zdroj streamování.

Examples

-- 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;