set

Utilizzo

view: view_name {
set: set_name {
fields: [field, field, ...]
}
}
Gerarchia
set
Tipi di campi possibili
Dimensione, Gruppo di dimensioni, Campo filtro, Misura

Accetta
Un elenco di nomi di campi con parentesi quadre

Definizione

Gli insiemi possono essere utili quando viene fatto riferimento in altri parametri, come fields (per join) e drill_fields (per campi), che richiedono elenchi di campi.

Per definire ogni insieme utilizza il parametro set. Un insieme può contenere un numero qualsiasi di dimensioni, misure o filtri dei campi dalla visualizzazione corrente, comprese le singole dimensioni generate da un gruppo di dimensioni. Può contenere anche campi di altre viste, utilizzando la sintassi view_name.field_name.

All'interno del parametro set, aggiungi un parametro fields, quindi elenca i campi nel seguente esempio:

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

Gli insiemi possono contenere anche altri set. Per distinguere un nome impostato da quello di una dimensione o una misura, aggiungi un carattere *. Ad esempio:

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*
  ]
}

L'insieme denominato my_third_set conterrà questi campi:

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

Infine, i campi possono essere esclusi utilizzando il carattere -. Ad esempio:

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
  ]
}

L'insieme denominato my_fourth_set conterrà questi campi:

  • dimension_one
  • another_view.dimension_two

Esempi

Crea un insieme chiamato financial_data

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

Nella vista Clienti, fai un insieme denominato basic_customer_data e che faccia riferimento anche alla visualizzazione Informazioni sugli ordini dei clienti:

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

Sfide comuni

I campi di un'altra visualizzazione devono essere uniti all'area di esplorazione in cui è utilizzato set

Se vuoi fare riferimento a un campo in set che proviene da un'altra vista, devi assicurarti che si unisca all'esplorazione in cui viene utilizzato set. Ad esempio, non funzionerà:

File modello

explore: orders { ... }

Visualizza file

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

Qui customers non è stato unito a orders, pertanto non è possibile fare riferimento a un campo di customers nell'insieme customer_info.

Aggiunta di campi da un dimension_group a un set

Quando vuoi aggiungere campi da un dimension_group a un insieme, devi aggiungere ogni dimensione dell'intervallo di tempo singolarmente. Ad esempio, considera questo dimension_group:

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

Non puoi aggiungere la dimensione giorno, settimana e mese a un insieme come il seguente:

set: created_timeframes {
  fields: [created]
}

Dovrai invece aggiungere i periodi di tempo singolarmente, in questo modo:

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