set

Uso

view: view_name {
set: set_name {
fields: [field, field, ...]
}
}
Jerarquía
set
Tipos de campos posibles
Dimensión, Grupo de dimensiones, Campo de filtro, Medición

Acepta
Una lista entre corchetes de nombres de campos

Definición

Los conjuntos pueden ser útiles cuando se hace referencia a ellos en otros parámetros, como fields (para las uniones) y drill_fields (para los campos), que necesitan listas de campos.

Defines cada conjunto mediante el parámetro set. Un conjunto puede contener cualquier cantidad de dimensiones, medidas o campos de filtro de la vista actual, incluidas las dimensiones individuales generadas por un grupo de dimensiones. También puede contener campos de otras vistas con la sintaxis view_name.field_name.

Dentro del parámetro set, agrega un parámetro fields y, luego, enumera los campos, como en este ejemplo:

set: my_first_set {
  fields: [
    dimension_one,
    another_view.dimension_two,
    measure_one
  ]
}

Los conjuntos también pueden contener otros conjuntos. Para diferenciar un nombre de conjunto del nombre de una dimensión o medida, agrega un carácter *. Por ejemplo:

set: my_first_set {
  fields: [
    dimension_one,
    another_view.dimension_two,
    measure_one
  ]
}

set: my_second_set {
  fields: [
    dimension_three,
    measure_two
  ]
}

set: my_third_set {
  fields: [
    my_first_set*,
    my_second_set*
  ]
}

El conjunto llamado my_third_set contendrá estos campos:

  • dimension_one
  • another_view.dimension_two
  • measure_one
  • dimension_three
  • measure_two

Por último, los campos se pueden excluir con el carácter -. Por ejemplo:

set: my_first_set {
  fields: [
    dimension_one,
    another_view.dimension_two,
    measure_one
  ]
}

set: my_second_set {
  fields: [
    dimension_three,
    measure_two
  ]
}

set: my_third_set {
  fields: [
    my_first_set*,
    my_second_set*
  ]
}

set: my_fourth_set {
  fields: [
    my_first_set*,
    -measure_one
  ]
}

El conjunto llamado my_fourth_set contendrá estos campos:

  • dimension_one
  • another_view.dimension_two

Ejemplos

Crea un conjunto llamado financial_data

set: financial_data {
  fields: [
    subtotal,
    shipping,
    tax,
    total,
    cost,
    profit
  ]
}

Crea un conjunto llamado basic_customer_data en la vista Clientes que también haga referencia a la vista Datos del pedido del cliente.

set: basic_customer_data {
  fields: [
    name,
    address,
    status,
    customer_order_facts.lifetime_orders,
    customer_order_facts.lifetime_revenue
  ]
}

Desafíos habituales

Los campos de otra vista deben unirse a la sección Explorar en la que se usa set

Si deseas hacer referencia a un campo en set que es de otra vista, debes asegurarte de que esa vista esté unida a la Explorar que se usa set. Por ejemplo, esto no funcionará:

Archivo del modelo

explore: orders { ... }

Ver archivo

view: orders {
  set: customer_info {
    fields: [customer.name]
  }
}

Aquí, customers no se unió a orders, por lo que no se puede hacer referencia a un campo de customers en el conjunto de customer_info.

Agrega campos de una dimension_group a un conjunto

Cuando quieras agregar campos de un dimension_group a un conjunto, deberás agregar cada dimensión de período de forma individual. Por ejemplo, considera esta dimension_group:

dimension_group: created {
  type: time
  timeframes: [date, week, month]
  sql: ${TABLE}.created_at ;;
}

No puede agregar la dimensión de día, semana y mes a un conjunto como este:

set: created_timeframes {
  fields: [created]
}

En su lugar, deberá agregar los períodos de forma individual, como se muestra a continuación:

set: created_timeframes {
  fields: [
    created_date,
    created_week,
    created_month
  ]
}