Vista SCHEMATA_OPTIONS
La vista INFORMATION_SCHEMA.SCHEMATA_OPTIONS
contiene una fila por cada opción definida en cada conjunto de datos de un proyecto.
Antes de empezar
Para consultar la vista SCHEMATA_OPTIONS
para obtener metadatos de conjuntos de datos, necesitas el permiso de bigquery.datasets.get
gestión de identidades y accesos (IAM) a nivel de proyecto.
Cada uno de los siguientes roles de gestión de identidades y accesos predefinidos incluye los permisos que necesitas para obtener la vista SCHEMATA_OPTIONS
:
roles/bigquery.admin
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.dataViewer
Para obtener más información sobre los permisos de BigQuery, consulta Control de acceso con gestión de identidades y accesos.
Esquema
Cuando consultas la vistaINFORMATION_SCHEMA.SCHEMATA_OPTIONS
, los resultados de la consulta contienen una fila por cada opción definida en cada conjunto de datos de un proyecto.
La vista INFORMATION_SCHEMA.SCHEMATA_OPTIONS
tiene el siguiente esquema:
Nombre de la columna | Tipo de datos | Valor |
---|---|---|
CATALOG_NAME |
STRING |
El nombre del proyecto que contiene el conjunto de datos |
SCHEMA_NAME |
STRING |
Nombre del conjunto de datos, también conocido como datasetId |
OPTION_NAME |
STRING |
Nombre de la opción. Para ver una lista de las opciones admitidas, consulta la lista de opciones de esquema.
La opción |
OPTION_TYPE |
STRING |
El tipo de datos de la opción |
OPTION_VALUE |
STRING |
Valor de la opción |
Ámbito y sintaxis
Las consultas en esta vista deben incluir un calificador de región. Si no especificas un calificador regional, los metadatos se obtendrán de la región de EE. UU. En la siguiente tabla se explica el ámbito de la región de esta vista:
Nombre de la vista | Ámbito de los recursos | Ámbito de la región |
---|---|---|
[PROJECT_ID.]INFORMATION_SCHEMA.SCHEMATA_OPTIONS |
Nivel de proyecto | Región de EE. UU. |
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS |
Nivel de proyecto | REGION |
-
Opcional:
PROJECT_ID
: el ID de tu Google Cloud proyecto. Si no se especifica, se usa el proyecto predeterminado. -
REGION
: cualquier nombre de región del conjunto de datos. Por ejemplo,`region-us`
.
Ejemplo
-- Returns metadata for datasets in a region.
SELECT * FROM region-us.INFORMATION_SCHEMA.SCHEMATA_OPTIONS;
Ejemplos
Obtener el tiempo de vencimiento predeterminado de las tablas de todos los conjuntos de datos de tu proyecto
Para ejecutar la consulta en un proyecto que no sea el predeterminado, añade el ID del proyecto al conjunto de datos con el siguiente formato:
`PROJECT_ID`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
`myproject`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
.
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA_OPTIONS WHERE option_name = 'default_table_expiration_days';
El resultado es similar al siguiente:
+----------------+---------------+-------------------------------+-------------+---------------------+ | 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 | +----------------+---------------+-------------------------------+-------------+---------------------+
Recuperar etiquetas de todos los conjuntos de datos de un proyecto
Para ejecutar la consulta en un proyecto que no sea el predeterminado, añade el ID del proyecto al conjunto de datos con el siguiente formato:
`PROJECT_ID`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
`myproject`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
.
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA_OPTIONS WHERE option_name = 'labels';
El resultado es similar al siguiente:
+----------------+---------------+-------------+---------------------------------+------------------------+ | 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")] | +----------------+---------------+-------------+---------------------------------+------------------------+