Tampilan VIEWS

Tampilan INFORMATION_SCHEMA.VIEWS berisi metadata tentang tampilan.

Izin yang diperlukan

Untuk mendapatkan metadata tampilan, Anda memerlukan izin Identity and Access Management (IAM) berikut:

  • bigquery.tables.get
  • bigquery.tables.list

Setiap peran IAM bawaan berikut akan menyertakan izin yang Anda perlukan untuk mendapatkan metadata tampilan:

  • roles/bigquery.admin
  • roles/bigquery.dataEditor
  • roles/bigquery.metadataViewer
  • roles/bigquery.dataViewer

Untuk mengetahui informasi selengkapnya tentang izin BigQuery, lihat Kontrol akses dengan IAM.

Skema

Saat Anda membuat kueri tampilan INFORMATION_SCHEMA.VIEWS, hasil kueri akan berisi satu baris untuk setiap tampilan dalam set data.

Tampilan INFORMATION_SCHEMA.VIEWS memiliki skema berikut:

Nama kolom Jenis data Nilai
TABLE_CATALOG STRING Nama project yang berisi set data
TABLE_SCHEMA STRING Nama set data yang berisi tampilan juga disebut sebagai set data id
TABLE_NAME STRING Nama tampilan juga disebut sebagai tabel id
VIEW_DEFINITION STRING Kueri SQL yang menentukan tampilan
CHECK_OPTION STRING Nilai yang ditampilkan selalu NULL
USE_STANDARD_SQL STRING YES jika tampilan dibuat dengan menggunakan kueri GoogleSQL; NO jika useLegacySql ditetapkan ke true

Cakupan dan sintaksis

Kueri terhadap tabel virtual ini harus menyertakan set data atau penentu region. Untuk kueri dengan penentu set data, Anda harus memiliki izin untuk set data. Untuk kueri dengan penentu region, Anda harus memiliki izin untuk project. Untuk informasi selengkapnya, lihat Sintaksis. Tabel berikut menjelaskan cakupan region dan resource untuk tabel virtual ini:

Nama tabel virtual Cakupan resource Cakupan region
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.VIEWS Level project REGION
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.VIEWS Level set data Lokasi set data
Ganti kode berikut:

  • Opsional: PROJECT_ID: ID project Google Cloud Anda. Jika tidak ditentukan, project default akan digunakan.

    Contoh:

    -- Returns metadata for views in a single dataset.
    SELECT * FROM myDataset.INFORMATION_SCHEMA.VIEWS;
    
    -- Returns metadata for all views in a region.
    SELECT * FROM region-us.INFORMATION_SCHEMA.VIEWS;
    

    Contoh

    Contoh 1:

    Contoh berikut mengambil semua kolom dari tampilan INFORMATION_SCHEMA.VIEWS kecuali untuk check_option yang dicadangkan untuk penggunaan pada masa mendatang. Metadata yang ditampilkan adalah untuk semua tampilan di mydataset dalam project default Anda — myproject.

    Untuk menjalankan kueri terhadap project selain project default Anda, tambahkan project ID ke set data dalam format berikut: `project_id`.dataset.INFORMATION_SCHEMA.view; misalnya, `myproject`.mydataset.INFORMATION_SCHEMA.VIEWS.

    SELECT
      * EXCEPT (check_option)
    FROM
      mydataset.INFORMATION_SCHEMA.VIEWS;

    Hasilnya mirip dengan berikut ini:

      +----------------+---------------+---------------+---------------------------------------------------------------------+------------------+
      | table_catalog  | table_schema  |  table_name   |                        view_definition                              | use_standard_sql |
      +----------------+---------------+---------------+---------------------------------------------------------------------+------------------+
      | myproject      | mydataset     | myview        | SELECT column1, column2 FROM [myproject:mydataset.mytable] LIMIT 10 | NO               |
      +----------------+---------------+---------------+---------------------------------------------------------------------+------------------+
      

    Perhatikan bahwa hasil menunjukkan bahwa tampilan ini dibuat menggunakan kueri legacy SQL.

    Contoh 2:

    Contoh berikut mengambil kueri SQL dan sintaksis kueri yang digunakan untuk menentukan myview dalam mydataset di project default Anda — myproject.

    Untuk menjalankan kueri terhadap project selain project default Anda, tambahkan project ID ke set data dalam format berikut: `project_id`.dataset.INFORMATION_SCHEMA.view; misalnya, `myproject`.mydataset.INFORMATION_SCHEMA.VIEWS.

    SELECT
      table_name, view_definition, use_standard_sql
    FROM
      mydataset.INFORMATION_SCHEMA.VIEWS
    WHERE
      table_name = 'myview';

    Hasilnya mirip dengan berikut ini:

      +---------------+---------------------------------------------------------------+------------------+
      |  table_name   |                        view_definition                        | use_standard_sql |
      +---------------+---------------------------------------------------------------+------------------+
      | myview        | SELECT column1, column2, column3 FROM mydataset.mytable       | YES              |
      +---------------+---------------------------------------------------------------+------------------+
      

    Perhatikan bahwa hasil menunjukkan bahwa tampilan ini dibuat dengan menggunakan kueri GoogleSQL.