NATIVE_DIMENSION

Devuelve el resultado de una expresión SQL de BigQuery tal como la evalúa el conjunto de datos subyacente.

La función NATIVE_DIMENSION te permite escribir código SQL directamente en un campo de Looker Studio. Esto es útil para las funciones que no se incluyen en la lista de funciones, pero que tu base de datos admite.

Cómo habilitar funciones nativas

Las funciones nativas están inhabilitadas de forma predeterminada y se administran a nivel de la fuente de datos.

Si eres propietario de una fuente de datos de BigQuery, puedes habilitar las funciones nativas para la fuente de datos siguiendo estos pasos:

  1. En Looker Studio, edita la fuente de datos.
  2. En la parte superior derecha del editor de la fuente de datos, haz clic en Funciones nativas.
  3. En el diálogo Funciones nativas, selecciona Activado.
  4. Haz clic en Guardar.

Si inhabilitas las funciones nativas, ningún usuario podrá crear campos con ellas. Además, los gráficos existentes que hagan referencia a campos con funciones nativas mostrarán un error.

Ejemplo de uso

NATIVE_DIMENSION("JSON_VALUE('{"name": "Dana"}','$.name')","STRING")

Sintaxis

NATIVE_DIMENSION( expression, type )

Parámetros

expression: Es una expresión que debe evaluar el conjunto de datos subyacente. Puede ser cualquier SQL de BigQuery válido que se incluiría en una sola columna de una instrucción SELECT. La expresión no puede incluir ninguna agregación.

type: Es un literal de tipo de datos. Consulta la siguiente sección para conocer los tipos que admite esta función.

NATIVE_DIMENSION tipos

Puedes elegir entre los siguientes tipos:

Tipo Datos previstos Ejemplos de informes
STRING Cero o más letras, números, caracteres o símbolos

A1B2C3

BOOL

Es un valor lógico.

true

false

DOUBLE Es un número de punto flotante. 1,234.56
INT64 Un número entero. 1,234
DATE Es una fecha de calendario.

2020-09-21

DATETIME Es una fecha de calendario con hora. 2020-09-21 12:35 PM
GEOGRAPHY

Es una colección de puntos y polígonos que corresponden al tipo de datos geográficos de BigQuery .

Solo se admiten las funciones de BigQuery POINT y POLYGON .

POINT(32 210)

POLYGON((0 0, 2 2, 2 0, 0 0), (2 2, 3 4, 2 4, 2 2))

Si tu expresión devuelve un tipo de datos de marca de tiempo, como el tipo TIMESTAMP de BigQuery, usa la función CAST para convertirlo en un tipo DATETIME. Por ejemplo:

NATIVE_DIMENSION("CAST({ expression } AS DATETIME)", "DATETIME")

Ejemplos de NATIVE_DIMENSION

Funciones JSON en SQL

Supón que tus datos incluyen un campo users_ages_json cuyos valores tienen el formato de cargas útiles JSON. Un ejemplo de valor de fila de este campo podría verse como el siguiente:

{"name": "Jakob", "age": "26"}

Usa la función NATIVE_DIMENSION para recuperar la edad de users_ages_json con la función JSON_VALUE de BigQuery:

NATIVE_DIMENSION("JSON_VALUE(user_ages_json, '$.age')","INT64")

Para este valor de fila de ejemplo, la función NATIVE_DIMENSION devolvería la edad 26 como un número entero.

Límites de NATIVE_DIMENSION

Quién puede usar las funciones nativas

Si las funciones nativas están habilitadas, los propietarios y editores de la fuente de datos pueden crear campos con funciones nativas en la fuente de datos.

Los usuarios que pueden ver la fuente de datos pueden usar campos con funciones nativas en los gráficos. Sin embargo, los usuarios no pueden crear campos nuevos con funciones nativas ni editar campos con funciones nativas.

Campos de agregación

No puedes incluir ningún campo agregado en el parámetro expression.

Funciones analíticas

No puedes incluir ninguna función analítica en el parámetro expression.

Combinaciones

No puedes crear un campo con la función NATIVE_DIMENSION en una fuente de datos combinados.

Sin embargo, puedes crear un campo con esta función antes de combinar los datos y, luego, usar ese campo en una combinación.

Tipos de datos TIMESTAMP

Si tu expresión devuelve un tipo de datos de marca de tiempo, como el tipo TIMESTAMP de BigQuery, usa la función CAST para convertirlo en un tipo DATETIME. Por ejemplo:

NATIVE_DIMENSION("CAST({expression} AS DATETIME)", "DATETIME")