Bagikan melalui


CREATE VIEW (saluran)

Membuat tabel virtual tanpa data fisik berdasarkan kumpulan hasil kueri SQL dalam alur.

Syntax

Berikut ini menguraikan sintaks untuk mendeklarasikan tampilan dengan SQL:

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

Parameter-parameternya

  • view_name

    Nama untuk tampilan. Nama harus unik dalam katalog dan skema yang ditargetkan oleh alur proses.

  • view_comment

    Deskripsi opsional untuk tampilan.

  • TBLPROPERTIES

    Daftar properti tabel opsional untuk tabel.

  • kueri

    Kueri yang membuat tampilan dari tabel dasar atau tampilan lainnya.

Memerlukan izin

** Pengguna run-as untuk pipeline harus memiliki izin berikut agar dapat membuat tampilan:

  • SELECT hak istimewa pada tabel dasar yang dirujuk oleh tampilan.
  • USE CATALOG hak istimewa pada katalog induk dan hak istimewa USE SCHEMA pada skema induk.
  • CREATE TABLE hak istimewa pada skema untuk tampilan.

Agar pengguna dapat memperbarui tampilan dalam alur, mereka harus memiliki izin berikut:

  • USE CATALOG hak istimewa pada katalog induk dan hak istimewa USE SCHEMA pada skema induk.
  • IZIN KELOLA untuk tampilan.
  • SELECT hak akses pada tabel dasar yang dirujuk oleh tampilan.

Agar pengguna dapat mengkueri tampilan yang dihasilkan, mereka harus memiliki izin berikut:

  • USE CATALOG hak istimewa pada katalog induk dan hak istimewa USE SCHEMA pada skema induk.
  • SELECT izin akses pada tampilan.

Keterbatasan

  • CREATE VIEW hanya tersedia dalam alur yang mendukung mode penerbitan default. Alur yang menggunakan schema LIVE (warisan) tidak didukung. Untuk informasi selengkapnya, lihat LIVE schema (legasi).
  • Alur harus berupa alur Katalog Unity.
  • Ekspektasi, dalam bentuk CONSTRAINT klausul, tidak didukung.
  • Tampilan tidak boleh memiliki kueri streaming, atau digunakan sebagai sumber streaming.

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;