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 | +-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+