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 y métrica
Acepta
Lista de nombres de campos entre corchetes
|
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.
Puedes definir cada conjunto con 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 que genera 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 el nombre de un 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á los siguientes campos:
dimension_oneanother_view.dimension_twomeasure_onedimension_threemeasure_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á los siguientes campos:
dimension_oneanother_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 Customers que también haga referencia a la vista Customer Order Facts:
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 exploración en la que se usa set.
Si deseas hacer referencia a un campo en set que proviene de otra vista, debes asegurarte de que esa vista se una a la Exploración en la 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 customer_info.
Cómo agregar campos de un 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 este dimension_group:
dimension_group: created {
type: time
timeframes: [date, week, month]
sql: ${TABLE}.created_at ;;
}
No puedes agregar la dimensión día, semana y mes a un conjunto como este:
set: created_timeframes {
fields: [created]
}
En cambio, deberás agregar los períodos de forma individual, de la siguiente manera:
set: created_timeframes {
fields: [
created_date,
created_week,
created_month
]
}