Crea niveles dinámicos

Los niveles pueden ser una excelente manera de agrupar valores. Sin embargo, con las dimensiones type: tier de LookML, esos depósitos están predefinidos y estáticos. En ocasiones, es posible que desee crear un nivel dinámico que permita a los usuarios cambiar el tamaño del bucket. Puedes hacer esto en Looker mediante campos de solo filtro (llamados parámetros parameter) junto con un lenguaje de plantillas (llamado líquido).

También puede usar la vinculación personalizada a fin de crear niveles dinámicos de forma nativa en Explorars cuando tenga permiso para crear o editar campos personalizados.

Para crear un nivel dinámico:

  1. Crea un parámetro de type: number para que funcione como el campo de filtro de frontend en el que el usuario puede ingresar el tamaño numérico del bucket que desee.
  2. Crea una dimensión que haga referencia al valor del parámetro con la variable líquida {% parameter parameter_name %}. Esta dimensión determina los distintos buckets y cambia el tamaño del bucket de forma dinámica al valor que ingrese el usuario en el campo de filtro de frontend (el parámetro parameter).

Por ejemplo, un desarrollador crea un nivel de edad dinámico que permite a los usuarios agrupar los valores de edad por rangos personalizados:

Es posible que la sintaxis de SQL del siguiente ejemplo deba adaptarse para adaptarse al dialecto de tu base de datos.
  parameter: age_tier_bucket_size {
    type: number
  }

  dimension: dynamic_age_tier {
    type: number
    sql: TRUNCATE(${TABLE}.age / {% parameter age_tier_bucket_size %}, 0)
          * {% parameter age_tier_bucket_size %} ;;
  }

Ahora, un usuario puede elegir valores de nivel para la columna Edad en Explorar. Por ejemplo, un usuario podría ver edades agrupadas en depósitos de 10 años y, luego, ingresar el valor 10 en el filtro Tamaño del depósito por edad:

En Filtro de tamaño del segmento, Intervalo de edad del usuario y Recuento de usuarios filtrados por el valor 10.

La expresión de SQL en la dimensión dynamic_age_tier divide un valor de edad de la columna ${TABLE}.age subyacente (por ejemplo, 25) por el valor del parámetro de 10, lo que da como resultado 2.5. El valor 2.5 se trunca a 2 con la función TRUNCATE y se multiplica por el valor del parámetro 10, lo que da como resultado 20. 20 se convierte en el bucket; cualquier valor de edad entre 20 y 29 se incluye en el bucket de 20.