PARAMETERS ビュー
INFORMATION_SCHEMA.PARAMETERS
ビューには、データセット内の各ルーティンのパラメータごとに 1 行が表示されます。
必要な権限
INFORMATION_SCHEMA.PARAMETERS
ビューをクエリするには、次の Identity and Access Management(IAM)権限が必要です。
bigquery.routines.get
bigquery.routines.list
次の IAM 事前定義ロールには、ルーティン メタデータの取得に必要な権限が含まれています。
roles/bigquery.admin
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
BigQuery の権限の詳細については、IAM でのアクセス制御をご覧ください。
スキーマ
INFORMATION_SCHEMA.PARAMETERS
ビューにクエリを実行すると、クエリ結果として、データセット内の各ルーティンのパラメータごとに 1 行が表示されます。
INFORMATION_SCHEMA.PARAMETERS
ビューのスキーマは次のとおりです。
列名 | データ型 | 値 |
---|---|---|
SPECIFIC_CATALOG | STRING | パラメータを含むルーティンが定義されているデータセットを含むプロジェクトの名前 |
SPECIFIC_SCHEMA | STRING | パラメータが定義されているルーティンを含むデータセットの名前 |
SPECIFIC_NAME | STRING | パラメータが定義されているルーティンの名前 |
ORDINAL_POSITION | STRING | パラメータの位置(開始値 1)、または戻り値の 0 |
PARAMETER_MODE | STRING | パラメータのモード(IN 、OUT 、INOUT 、または NULL ) |
IS_RESULT | STRING | パラメータがどの関数(YES または NO )の結果であるか |
PARAMETER_NAME | STRING | パラメータの名前 |
DATA_TYPE | STRING | パラメータのタイプ(任意の型として定義されている場合は ANY TYPE ) |
PARAMETER_DEFAULT | STRING | SQL リテラル値としてのパラメータのデフォルト値(常に NULL ) |
IS_AGGREGATE | STRING | 集計パラメータであるかどうかにかかわらず、常に NULL です |
スコープと構文
このビューに対するクエリでは、データセット修飾子またはリージョン修飾子を指定する必要があります。詳細については、構文をご覧ください。次の表に、このビューのリージョン スコープとリソース スコープを示します。
ビュー名 | リソース スコープ | リージョン スコープ |
---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.PARAMETERS | プロジェクト レベル | REGION |
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.PARAMETERS | データセット レベル | データセットのロケーション |
- 省略可:
PROJECT_ID
: Google Cloud プロジェクトの ID。指定しない場合は、デフォルトのプロジェクトが使用されます。 -
REGION
: 任意のデータセット リージョン名。例:`region-us`
-
DATASET_ID
: データセットの ID。詳しくは、データセット修飾子をご覧ください。
例
-- Returns metadata for parameters of a routine in a single dataset. SELECT * FROM myDataset.INFORMATION_SCHEMA.PARAMETERS; -- Returns metadata for parameters of a routine in a region. SELECT * FROM region-us.INFORMATION_SCHEMA.PARAMETERS;
例
例
デフォルト プロジェクト以外のプロジェクトのデータセットに対してクエリを実行するには、次の形式でプロジェクト ID を追加します。
`PROJECT_ID`.`DATASET_ID`.INFORMATION_SCHEMA.PARAMETERS
PROJECT_ID
: プロジェクトの ID。DATASET_ID
: データセットの ID。
例: example-project.mydataset.INFORMATION_SCHEMA.JOBS_BY_PROJECT
次の例では、INFORMATION_SCHEMA.PARAMETERS
ビューからすべてのパラメータを取得しています。デフォルト プロジェクト(myproject
)にある mydataset
のルーティンに関するメタデータが返されます。
SELECT * EXCEPT(is_typed) FROM mydataset.INFORMATION_SCHEMA.PARAMETERS WHERE table_type = 'BASE TABLE';
次のような結果になります。
+-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+ | specific_catalog | specific_schema | specific_name | ordinal_position | parameter_mode | is_result | parameter_name | data_type | parameter_default | is_aggregate | +-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+ | myproject | mydataset | myroutine1 | 0 | NULL | YES | NULL | INT64 | NULL | NULL | | myproject | mydataset | myroutine1 | 1 | NULL | NO | x | INT64 | NULL | NULL | +-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+