Buat Tampilan Sementara (alur)

Gunakan pernyataan CREATE TEMPORARY VIEW untuk membuat tampilan sementara dalam alur.

Syntax

Berikut ini menguraikan sintaks untuk mendeklarasikan tampilan dengan SQL:

CREATE TEMPORARY VIEW view_name
  [(
    [ col_name [ COMMENT col_comment ] [, ...] ]
    [ column_constraint ] [, ...]
  )]
  [ COMMENT view_comment ]
  [ TBLPROPERTIES ]
  AS query

Parameter-parameternya

  • view_name

    Nama untuk tampilan.

  • col_name

    Secara opsional, Anda dapat menentukan kolom untuk tampilan yang dihasilkan. col_name adalah nama untuk kolom.

  • col_comment

    Saat menentukan kolom, Anda dapat menentukan deskripsi untuk kolom secara opsional.

  • column_constraint

    • CONSTRAINT nama_ekspetasi EXPECT (ekspresi_ekspetasi) [ PADA PELANGGARAN { GAGAL UPDATE | HAPUS BARIS } ]

      Menambahkan ekspektasi kualitas data ke dalam tampilan. Ekspektasi kualitas data ini dapat dilacak dari waktu ke waktu dan diakses melalui log peristiwa pipeline. FAIL UPDATE Ekspektasi menyebabkan pemrosesan gagal saat membuat tampilan sekaligus menyegarkan pipeline. DROP ROW Ekspektasi menyebabkan seluruh baris dihapus jika ekspektasi tidak terpenuhi. Lihat Mengelola kualitas data dengan ekspektasi alur kerja.

      expectation_expr dapat terdiri dari literal, pengenal kolom dalam tampilan, dan fungsi atau operator SQL bawaan deterministik kecuali:

      Juga expr tidak boleh berisi subkueri apa pun.

  • view_comment

    Deskripsi opsional untuk tampilan.

  • TBLPROPERTIES

    Daftar opsional properti tabel untuk tampilan tersebut.

  • kueri

    Klausa ini mengisi tampilan menggunakan data dari sebuah query. Saat Anda menentukan kueri dan daftar kolom bersama-sama, daftar kolom harus berisi semua kolom yang dikembalikan oleh kueri, atau terjadi kesalahan. Kolom apa pun yang ditentukan tetapi tidak dikembalikan oleh query nilai yang dikembalikan null saat dikueri.

Keterbatasan

  • Tampilan sementara hanya bertahan selama masa pakai alur.
  • Mereka bersifat privat untuk alur yang menentukan.
  • Mereka tidak ditambahkan ke katalog, dan dapat memiliki nama yang sama dengan tampilan di katalog. Dalam alur, jika tampilan sementara dan tampilan atau tabel dalam katalog memiliki nama yang sama, referensi ke nama diselesaikan ke tampilan sementara.

Examples

-- Create a temporary view, and use it
CREATE TEMPORARY VIEW my_view (sales_day, total_sales, sales_rep)
  AS SELECT date(sales_date) AS sale_day, SUM(sales) AS total_sales, FIRST(sales_rep) FROM sales GROUP BY date(sales_date), sales_rep;

CREATE OR REFRESH MATERIALIZED VIEW sales_by_date
  AS SELECT * FROM my_view;

-- Create a temporary view with a data quality expectation
CREATE TEMPORARY VIEW valid_sales (
  CONSTRAINT valid_total_sales EXPECT (total_sales > 0) ON VIOLATION DROP ROW
)
  AS SELECT date(sales_date) AS sales_day, SUM(sales) AS total_sales FROM sales GROUP BY date(sales_date);