SCHEMATA_OPTIONS 檢視表
INFORMATION_SCHEMA.SCHEMATA_OPTIONS
檢視表包含專案中每個資料集所設定的每個選項,各佔一個資料列。
事前準備
如要查詢資料集的中繼資料檢視畫面 SCHEMATA_OPTIONS
,您需要專案層級的「身分與存取權管理」(IAM) 權限 bigquery.datasets.get
。
下列預先定義的 IAM 角色都包含取得 SCHEMATA_OPTIONS
檢視畫面所需的權限:
roles/bigquery.admin
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.dataViewer
如要進一步瞭解 BigQuery 權限,請參閱「使用 IAM 控管存取權」。
結構定義
查詢INFORMATION_SCHEMA.SCHEMATA_OPTIONS
檢視表時,專案中每個資料集設定的每個選項在查詢結果都會有一個資料列。
INFORMATION_SCHEMA.SCHEMATA_OPTIONS
檢視表具有下列結構定義:
資料欄名稱 | 資料類型 | 值 |
---|---|---|
catalog_name |
STRING |
包含資料集的專案名稱 |
schema_name |
STRING |
資料集的名稱,又稱為 datasetId |
option_name |
STRING |
選項名稱。如需支援的選項清單,請參閱結構化資料選項清單。
只有在 2022 年 12 月 1 日後更新的資料集,才會顯示「 |
option_type |
STRING |
選項的資料類型 |
option_value |
STRING |
選項值 |
範圍和語法
對這個檢視表執行的查詢必須包含區域限定詞。如未指定地區限定符,系統會從美國地區擷取中繼資料。下表說明這個檢視畫面的區域範圍:
檢視表名稱 | 資源範圍 | 區域範圍 |
---|---|---|
[PROJECT_ID.]INFORMATION_SCHEMA.SCHEMATA_OPTIONS |
專案層級 | 美國區域 |
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS |
專案層級 | REGION |
-
選用:
PROJECT_ID
:您的 Google Cloud 專案 ID。如未指定,系統會使用預設專案。 -
REGION
:任何資料集區域名稱。 例如:`region-us`
。
示例
-- Returns metadata for datasets in a region.
SELECT * FROM region-us.INFORMATION_SCHEMA.SCHEMATA_OPTIONS;
範例
擷取專案中所有資料集的預設資料表到期時間
如要對預設專案以外的專案執行查詢,請使用以下格式將專案 ID 新增至資料集:
`PROJECT_ID`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
`myproject`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
。
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA_OPTIONS WHERE option_name = 'default_table_expiration_days';
結果會類似如下:
+----------------+---------------+-------------------------------+-------------+---------------------+ | catalog_name | schema_name | option_name | option_type | option_value | +----------------+---------------+-------------------------------+-------------+---------------------+ | myproject | mydataset3 | default_table_expiration_days | FLOAT64 | 0.08333333333333333 | | myproject | mydataset2 | default_table_expiration_days | FLOAT64 | 90.0 | | myproject | mydataset1 | default_table_expiration_days | FLOAT64 | 30.0 | +----------------+---------------+-------------------------------+-------------+---------------------+
擷取專案中所有資料集的標籤
如要對預設專案以外的專案執行查詢,請使用以下格式將專案 ID 新增至資料集:
`PROJECT_ID`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
`myproject`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
。
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA_OPTIONS WHERE option_name = 'labels';
結果會類似如下:
+----------------+---------------+-------------+---------------------------------+------------------------+ | catalog_name | schema_name | option_name | option_type | option_value | +----------------+---------------+-------------+---------------------------------+------------------------+ | myproject | mydataset1 | labels | ARRAY<STRUCT<STRING, STRING>> | [STRUCT("org", "dev")] | | myproject | mydataset2 | labels | ARRAY<STRUCT<STRING, STRING>> | [STRUCT("org", "dev")] | +----------------+---------------+-------------+---------------------------------+------------------------+