Le paramètre set
LookML est un moyen de rendre vos projets LookML plus efficaces et plus faciles à gérer. Le paramètre set
vous permet de regrouper les champs qui peuvent souvent être répétés dans votre projet dans le paramètre fields
ou dans les champs d'analyse. Si vous utilisez un ensemble pour regrouper des champs répétés, vous créez dans le modèle un emplacement unique où ce groupe de champs peut être géré.
Cette page comprend les exemples suivants d'utilisation d'ensembles LookML pour rendre vos projets LookML plus efficaces et plus faciles à gérer :
- Ajouter les mêmes champs d'analyse à plusieurs mesures: définissez des champs d'analyse pour obtenir les détails que les utilisateurs souhaitent généralement voir lorsqu'ils explorent des agrégations.
- Inclure ou omettre un ensemble de champs dans une exploration : personnalisez l'expérience d'exploration pour les utilisateurs et simplifiez la liste des champs disponibles dans le sélecteur de champs.
Composants
- Le paramètre LookML
set
- Paramètre LookML
fields
(pour les explorations) - Le paramètre LookML
drill_fields
(pour les champs) - Le paramètre LookML
drill_fields
(pour les vues)
Prérequis
Exemple: Ajouter les mêmes champs d'analyse à plusieurs mesures
Supposons que vous souhaitiez que vos utilisateurs puissent effectuer une analyse plus détaillée pour obtenir des informations plus précises sur les utilisateurs chaque fois qu'ils voient des métriques de vente dans des explorations, des analyses ou des tableaux de bord. Pour ce faire, vous devez sélectionner une valeur pour la mesure Nombre dans l'interface utilisateur d'exploration afin d'ouvrir une requête sur les champs ID, Ville, État et Pays :
Vous pouvez créer un ensemble appelé user_details
qui inclut les champs id
, city
, state
et country
, puis les référencer dans plusieurs mesures pour que vos utilisateurs puissent en afficher les détails:
set: user_details {
fields: [id, city, state, country]
}
L'ensemble user_details
peut être utilisé pour définir un champ de drill-down pour la mesure count
:
measure: count {
type: count
drill_fields: [user_details*]
}
Dans cet exemple, la syntaxe [set_name*]
permet de spécifier que les champs de user_details
s'afficheront dans les résultats de la requête lorsque vous allez plus loin dans la mesure Nombre.
Vous pouvez ensuite réutiliser cet ensemble pour créer des champs d'analyse supplémentaires. Par exemple, vous pouvez ajouter le code LookML drill_fields: [user_details*]
aux mesures order_count
, total_sale_price
et average_sale_price
:
measure: order_count {
view_label: "Orders"
type: count_distinct
description: "Number of orders"
sql: ${order_id} ;;
drill_fields: [user_details*]
}
measure: total_sale_price {
type: sum
value_format_name: usd
sql: ${sale_price} ;;
drill_fields: [user_details*]
}
measure: average_sale_price {
type: average
value_format_name: usd
sql: ${sale_price} ;;
drill_fields: [user_details*]
}
Comme pour la mesure Nombre, lorsqu'un utilisateur sélectionne une valeur pour Nombre de commandes, Prix de vente total ou Prix de vente moyen dans l'interface utilisateur d'exploration, Looker ouvre une fenêtre contenant une requête sur les champs ID, Ville, État et Pays.
Si vous souhaitez modifier les champs d'analyse, par exemple pour ajouter ou supprimer un champ, il vous suffit de mettre à jour l'ensemble user_details
.
Vous pouvez également faire référence à un ensemble dans le paramètre drill_fields
d'une vue pour définir des champs de drill pour toutes les mesures de cette vue pour lesquelles des champs de drill n'ont pas encore été spécifiés au niveau du champ.
Exemple: inclusion ou omission d'un ensemble de champs dans une exploration
Supposons que vous souhaitiez simplifier le sélecteur de champs d'exploration pour les utilisateurs en excluant les champs qui ne sont pas essentiels pour ces utilisateurs.
Par exemple, supposons que vous disposiez d'une vue users
contenant des informations sur vos clients, y compris des champs pour ID, Prénom, Nom, Adresse e-mail et Âge, ainsi que des champs d'emplacement tels que Ville, État, Pays et Code postal. La vue users
est jointe à l'exploration orders
:
Comment faire pour exclure les champs Prénom, Nom, Adresse e-mail, Âge et Genre de l'exploration pour vos utilisateurs ? Vous pouvez créer un ensemble appelé user_info
qui liste les champs que vous souhaitez exclure de l'exploration Commandes :
Le code LookML de l'ensemble user_info
se présente comme suit :
set: user_info {
fields: [first_name, last_name, email, age, gender]
}
Pour définir une exploration Commandes avec le libellé Commandes sans données utilisateur, associez la vue users
à l'exploration orders
. Ajoutez le code LookML fields: [ALL_FIELDS*, -users.user_info*]
à l'exploration orders
pour inclure tous les champs, à l'exception de ceux de user_info
définis à partir de la vue users
:
explore: orders {
fields: [ALL_FIELDS*, -users.user_info*]
label: "Orders Without User Data"
join: users {
type: left_outer
sql_on: ${orders.user_id} = ${users.id} ;;
relationship: many_to_one
}
}
Étant donné que l'ensemble user_details
est exclu de l'exploration avec la syntaxe -users.user_details*
dans le paramètre fields
de l'exploration orders
, la vue Commandes de l'exploration Commandes sans données utilisateur exclut les champs listés dans l'ensemble users_user.info
du sélecteur de champ d'exploration.
Vous pouvez réutiliser l'ensemble user_info
pour omettre ces champs de l'interface utilisateur de l'exploration pour toutes les autres explorations auxquelles la vue users
est jointe. Si vous souhaitez modifier l'ensemble user_info
(par exemple, en ajoutant ou en supprimant un champ), il vous suffit de mettre à jour l'ensemble user_info
.