Si votre administrateur vous a accordé les autorisations nécessaires pour créer des calculs de table, vous pouvez utiliser les fonctionnalités suivantes pour effectuer rapidement des fonctions courantes sans avoir à créer des expressions Looker:
- Calculs rapides pour effectuer rapidement des calculs courants sur des champs numériques dans la table de données d'une exploration
Si votre administrateur vous a accordé les autorisations nécessaires pour créer des champs personnalisés, vous pouvez utiliser les fonctionnalités suivantes pour exécuter rapidement des fonctions courantes sans avoir à créer des expressions Looker:
Groupes personnalisés pour regrouper rapidement des valeurs sous des étiquettes personnalisées sans avoir à développer la logique
CASE WHEN
dans les paramètressql
ou les champstype: case
Bins personnalisés pour regrouper des dimensions de type numérique dans des niveaux personnalisés sans avoir à développer de champs LookML
type: tier
Les expressions Looker (parfois appelées Lexp) servent à effectuer des calculs dans les contextes suivants :
- Calculs de tables (incluant les expressions utilisées dans les tests de données)
- Champs personnalisés
- Filtres personnalisés
Les fonctions et les opérateurs qui s'y appliquent sont des éléments majeurs de ces expressions. Ces fonctions et opérateurs peuvent être classés dans différentes catégories de base :
- Mathématiques : les fonctions associées aux nombres
- Chaînes : les fonctions associées aux mots ou aux lettres
- Dates : les fonctions associées aux dates ou au temps
- Transformations logiques : les fonctions booléennes (vrai ou faux) et les opérateurs de comparaison
- Transformations positionnelles : les fonctions qui récupèrent des valeurs dans différentes lignes ou colonnes croisées
Certaines fonctions ne s'appliquent qu'aux calculs de tables
Les expressions Looker pour les filtres personnalisés et pour les champs personnalisés ne prennent pas en charge les fonctions Looker qui convertissent des types de données, qui agrègent les données de plusieurs lignes ou qui font référence à d'autres lignes ou colonnes croisées. Ces fonctions sont compatibles uniquement pour les calculs de table (y compris les calculs de table utilisés dans le paramètre expression
d'un test de données).
Cette page indique clairement les fonctions et opérateurs disponibles, selon l'endroit où vous utilisez votre expression Looker.
Fonctions et opérateurs mathématiques
Les fonctions et opérateurs mathématiques peuvent être utilisés de l'une des deux manières suivantes :
- Certaines fonctions mathématiques réalisent des calculs basés sur une seule ligne. Par exemple, l'arrondi, l'utilisation de la racine carrée, la multiplication et des fonctions similaires peuvent être utilisés pour des valeurs figurant dans une seule ligne et renvoient une valeur distincte pour chaque ligne. Tous les opérateurs mathématiques, tels que
+
, sont appliqués dans une ligne à la fois. - Les autres fonctions mathématiques, telles que les moyennes et les totaux cumulés, prennent en compte plusieurs lignes. Elles utilisent plusieurs lignes et les réduisent en un seul nombre, puis affichent ce même nombre dans chaque ligne.
Fonctions utilisées dans n'importe quelle expression Looker
Fonction | Syntaxe | Objectif |
---|---|---|
abs |
abs(value) |
Renvoie la valeur absolue de value . Pour obtenir un exemple, consultez le post destiné à la communauté concernant l'écart type et la détection d'anomalies dans les séries temporelles simples à l'aide de calculs de table. |
ceiling |
ceiling(value) |
Affiche le plus petit nombre entier supérieur ou égal à value . |
exp |
exp(value) |
Renvoie e élevé à la puissance value . |
floor |
floor(value) |
Renvoie le plus grand nombre entier inférieur ou égal à value . |
ln |
ln(value) |
Renvoie le logarithme naturel de value . |
log |
log(value) |
Renvoie le logarithme en base 10 de value . |
mod |
mod(value, divisor) |
Renvoie le reste de la division de value par divisor . |
power |
power(base, exponent) |
Renvoie base élevé à la puissance de exponent . Pour obtenir un exemple, consultez le post destiné à la communauté concernant l'écart type et la détection d'anomalies dans les séries temporelles simples à l'aide de calculs de table. |
rand |
rand() |
Renvoie un chiffre aléatoire compris entre 0 et 1. |
round |
round(value, num_decimals) |
Renvoie value arrondi à num_decimals décimales. Pour obtenir des exemples d'utilisation de round , consultez les posts de la communauté Utiliser pivot_index dans les calculs de table et Écart type et détection des valeurs aberrantes dans les séries temporelles simples à l'aide de calculs de table. |
sqrt |
sqrt(value) |
Affiche la racine carrée de value . Pour obtenir un exemple, consultez le post de la communauté Déviation standard et détection des valeurs aberrantes dans une série temporelle simple à l'aide de calculs de table. |
Fonctions destinées uniquement aux calculs de table
Nombre de ces fonctions utilisent plusieurs lignes et prennent en compte uniquement celles renvoyées par votre requête.
Fonction | Syntaxe | Objectif |
---|---|---|
acos |
acos(value) |
Renvoie le cosinus inverse de value . |
asin |
asin(value) |
Renvoie le sinus inverse de value . |
atan |
atan(value) |
Renvoie la tangente inverse de value . |
beta_dist |
beta_dist(value, alpha, beta, cumulative) |
Renvoie la position de value sur la distribution bêta avec les paramètres alpha et beta . Si la valeur est cumulative = yes , la fonction renvoie la probabilité cumulée. |
beta_inv |
beta_inv(probability, alpha, beta) |
Renvoie la position de probability sur la distribution bêta cumulée inverse avec les paramètres alpha et beta . |
binom_dist |
binom_dist(num_successes, num_tests, probability, cumulative) |
Renvoie la probabilité d'obtenir num_successes réussite dans les tests num_tests avec la valeur probability donnée de réussite. Si la valeur est cumulative = yes , la fonction renvoie la probabilité cumulée. |
binom_inv |
binom_inv(num_tests, test_probability, target_probability) |
Renvoie le plus petit nombre k tel que binom(k, num_tests, test_probability, yes) >= target_probability . |
chisq_dist |
chisq_dist(value, dof, cumulative) |
Renvoie la position de value sur la distribution gamma avec dof degrés de liberté. Si la valeur est cumulative = yes , renvoie la probabilité cumulée. |
chisq_inv |
chisq_inv(probability, dof) |
Renvoie la position de probability sur la distribution gamma cumulée inverse avec dof degrés de liberté. |
chisq_test |
chisq_test(actual, expected) |
Renvoie la probabilité du test du khi-deux pour déterminer l'indépendance entre les données actual et expected . actual peut être une colonne ou une colonne de listes. expected doit être du même type. |
combin |
combin(set_size, selection_size) |
Renvoie le nombre de façons de choisir les éléments selection_size à partir d'un ensemble de taille set_size . |
confidence_norm |
confidence_norm(alpha, stdev, n) |
Renvoie la moitié de la largeur de l'intervalle de confiance normal au niveau de pertinence alpha , l'écart type stdev et la taille d'échantillon n . |
confidence_t |
confidence_t(alpha, stdev, n) |
Renvoie la moitié de la largeur de l'intervalle de confiance de la loi t de Student au niveau de signification alpha , l'écart type stdev et la taille d'échantillon n . |
correl |
correl(column_1, column_2) |
Renvoie le coefficient de corrélation de column_1 et column_2 . |
cos |
cos(value) |
Renvoie le cosinus de value . |
count |
count(expression) |
Renvoie le nombre de valeurs autres que null dans la colonne définie par expression , sauf si expression définit une colonne de listes, auquel cas elle renvoie le nombre de chaque liste. |
count_distinct |
count_distinct(expression) |
Renvoie le nombre de valeurs distinctes autres que null dans la colonne définie par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra le nombre dans chaque liste. |
covar_pop |
covar_pop(column_1, column_2) |
Renvoie la covariance de population de column_1 et column_2 . |
covar_samp |
covar_samp(column_1, column_2) |
Renvoie la covariance d'échantillon de column_1 et column_2 . |
degrees |
degrees(value) |
Convertit value de radians en degrés. |
expon_dist |
expon_dist(value, lambda, cumulative) |
Renvoie la position de value sur la distribution exponentielle avec le paramètre lambda . Si la valeur est cumulative = yes , la fonction renvoie la probabilité cumulée. |
f_dist |
f_dist(value, dof_1, dof_2, cumulative) |
Renvoie la position de value sur la distribution F avec les paramètres dof_1 et dof_2 . Si la valeur est cumulative = yes , renvoie la probabilité cumulée. |
f_inv |
f_inv(probability, dof_1, dof_2) |
Renvoie la position de probability sur la distribution F cumulée inverse avec les paramètres dof_1 et dof_2 . |
fact |
fact(value) |
Renvoie le facteuriel de value . |
gamma_dist |
gamma_dist(value, alpha, beta, cumulative) |
Renvoie la position de value sur la distribution gamma avec les paramètres alpha et beta . Si la valeur est cumulative = yes , la fonction renvoie la probabilité cumulée. |
gamma_inv |
gamma_inv(probability, alpha, beta) |
Renvoie la position de probability sur la distribution gamma cumulée inverse avec les paramètres alpha et beta . |
geomean |
geomean(expression) |
Renvoie la moyenne géométrique de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra la moyenne géométrique de chaque liste. |
hypgeom_dist |
hypgeom_dist(sample_successes, sample_size, population_successes, population_size, cumulative) |
Renvoie la probabilité d'obtenir une sample_successes à partir de la valeur sample_size , du nombre de population_successes et de population_size donnés. Si la valeur est cumulative = yes , renvoie la probabilité cumulée. |
intercept |
intercept(y_column, x_column) |
Renvoie l'intercept de la ligne de régression linéaire via les points déterminés par y_column et x_column . Pour obtenir un exemple, consultez le post de la communauté Comment effectuer des prévisions dans Looker avec des calculs de table. |
kurtosis |
kurtosis(expression) |
Renvoie l'exemple d'aplatissement excédentaire de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas renvoie l'échantillon d'aplatissement excédentaire de chaque liste. |
large |
large(expression, k) |
Renvoie la k e plus grande valeur de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra la k e plus grande valeur de chaque liste. |
match |
match(value, expression) |
Renvoie le numéro de ligne de la première occurrence de value dans la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renvoie la position de value dans chaque liste. |
max |
max(expression) |
Renvoie la valeur maximale de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra la valeur maximale de chaque liste. Pour obtenir des exemples d'utilisation de max , consultez les posts de la communauté Utiliser des listes dans les calculs de table et Regrouper par dimension dans les calculs de table. |
mean |
mean(expression) |
Renvoie la moyenne de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra la moyenne de chaque liste. Pour obtenir des exemples d'utilisation de mean , consultez le post destiné à la communauté sur le calcul des moyennes mobiles et le post destiné à la communauté sur l'écart type et la détection d'anomalies dans les séries temporelles simples à l'aide des calculs de table. |
median |
median(expression) |
Renvoie la médiane de la colonne créée par expression , sauf si expression définit une colonne de listes. Dans ce cas, elle renvoie la médiane de chaque liste. |
min |
min(expression) |
Renvoie la valeur minimale de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra la valeur minimale de chaque liste. |
mode |
mode(expression) |
Renvoie le mode de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra le mode de chaque liste. |
multinomial |
multinomial(value_1, value_2, ...) |
Renvoie la factorielle de la somme des arguments, divisée par le produit de chacune de leurs factorielles. |
negbinom_dist |
negbinom_dist(num_failures, num_successes, probability, cumulative) |
Renvoie la probabilité d'obtenir des échecs de num_failures avant d'obtenir des succès de num_successes , avec la valeur probability donnée de réussite. Si la valeur est cumulative = yes , la fonction renvoie la probabilité cumulée. |
norm_dist |
norm_dist(value, mean, stdev, cumulative) |
Renvoie la position de value sur la distribution normale avec les valeurs mean et stdev données. Si la valeur est cumulative = yes , la fonction renvoie la probabilité cumulée. |
norm_inv |
norm_inv(probability, mean, stdev) |
Renvoie la position de probability sur la distribution cumulée normale inverse. |
norm_s_dist |
norm_s_dist(value, cumulative) |
Renvoie la position de value sur la distribution normale standard. Si la valeur est cumulative = yes , la fonction renvoie la probabilité cumulée. |
norm_s_inv |
norm_s_inv(probability) |
Renvoie la position de probability sur la distribution cumulée normale standard inverse. |
percent_rank |
percent_rank(column, value) |
Renvoie le classement de value dans column sous la forme d'un pourcentage compris entre 0 et 1 (inclus), où column est la colonne, le champ, la liste ou la plage contenant l'ensemble de données à prendre en compte, et value est la colonne contenant la valeur pour laquelle le classement en pourcentage sera déterminé.Exemple d'utilisation :percent_rank(${view_name.field_1}, ${view_name.field_1}) percent_rank(list(1, 2, 3), ${view_name.field_1}) percent_rank(list(1, 2, 3), 2) |
percentile |
percentile(expression, percentile_value) |
Renvoie la valeur de la colonne créée par expression correspondant à l'percentile_value donné, sauf si expression définit une colonne de listes, auquel cas elle renverra la valeur du percentile pour chaque liste. percentile_value doit être compris entre 0 et 1 ; Sinon, renvoie null . |
pi |
pi() |
Renvoie la valeur de pi. |
poisson_dist |
poisson_dist(value, lambda, cumulative) |
Renvoie la position de value sur la distribution de Poisson avec le paramètre lambda . Si la valeur est cumulative = yes , la fonction renvoie la probabilité cumulée. |
product |
product(expression) |
Renvoie le produit de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra le produit de chaque liste. |
radians |
radians(value) |
Convertit value de degrés en radians. |
rank |
rank(value, expression) |
Renvoie le rang de value dans la colonne créée par expression . Par exemple, si vous souhaitez classer les commandes en fonction de leur prix de vente total, vous pouvez utiliser rank(${order_items.total_sale_price},${order_items.total_sale_price}) , qui attribue un classement à chaque valeur de order_items.total_sale_price dans votre requête lorsqu'elle est comparée à l'ensemble de la colonne order_items.total_sale_price de votre requête. Dans le cas où expression définit plusieurs listes, cette fonction renvoie la taille relative de value dans chaque liste. Pour obtenir un exemple, consultez le post destiné à la communauté Classements avec les calculs de tables. |
rank_avg |
rank_avg(value, expression) |
Renvoie le rang moyen de value dans la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renvoie le rang moyen de value dans chaque liste. |
running_product |
running_product(value_column) |
Renvoie un produit cumulé des valeurs figurant dans value_column . |
running_total |
running_total(value_column) |
Renvoie un total cumulé des valeurs dans value_column . Pour obtenir un exemple, consultez la page Créer une colonne de calcul du total en bas du tableau avec des calculs de table. |
sin |
sin(value) |
Renvoie le sinus de value . |
skew |
skew(expression) |
Renvoie un échantillon de l'asymétrie de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra un échantillon de l'asymétrie de chaque liste. |
slope |
slope(y_column, x_column) |
Renvoie la pente de la ligne de régression linéaire via les points déterminés par y_column et x_column . Pour obtenir un exemple, consultez le post de la communauté Comment effectuer des prévisions dans Looker avec des calculs de table. |
small |
small(expression, k) |
Renvoie la k ème plus petite valeur de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renvoie la k ème plus petite valeur de chaque liste. |
stddev_pop |
stddev_pop(expression) |
Renvoie l'écart type (population) de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renverra l'écart type (population) de chaque liste. |
stddev_samp |
stddev_samp(expression) |
Renvoie l'écart type (échantillon) de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renvoie l'écart type (échantillon) de chaque liste. |
sum |
sum(expression) |
Renvoie la somme de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renvoie la somme de chaque liste. Pour obtenir des exemples d'utilisation de sum , consultez les pages Agrégation sur plusieurs lignes (totaux par ligne) dans les calculs de table et Bonnes pratiques pour calculer un pourcentage du total. |
t_dist |
t_dist(value, dof, cumulative) |
Renvoie la position de value sur la distribution t de Student avec dof degrés de liberté. Si la valeur est cumulative = yes , renvoie la probabilité cumulée. |
t_inv |
t_inv(probability, dof) |
Renvoie la position de probability sur la distribution cumulée normale inverse avec dof degrés de liberté. |
t_test |
t_test(column_1, column_2, tails, type) |
Renvoie le résultat d'un test t de Student portant sur les données de column_1 et column_2 , en utilisant 1 ou 2 tails . type : 1 = apparié, 2 = homoscédastique, 3 = hétéroscédastique |
tan |
tan(value) |
Renvoie la tangente de value . |
var_pop |
var_pop(expression) |
Renvoie la variance (population) de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renvoie la variance (population) de chaque liste. |
var_samp |
var_samp(expression) |
Renvoie la variance (échantillon) de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renvoie la variance (échantillon) de chaque liste. |
weibull_dist |
weibull_dist(value, shape, scale, cumulative) |
Renvoie la position de value sur la distribution Weibull avec les paramètres shape et scale . Si la valeur est cumulative = yes , la fonction renvoie la probabilité cumulée. |
z_test |
z_test(data, value, stdev) |
Renvoie la valeur p unilatérale du test z en utilisant les valeurs data et stdev existantes sur la value moyenne supposée. |
Opérateurs utilisés dans n'importe quelle expression Looker
Vous pouvez utiliser les opérateurs mathématiques standard suivants :
Opérateur | Syntaxe | Objectif |
---|---|---|
+ |
value_1 + value_2 |
Ajoute value_1 et value_2 . |
- |
value_1 - value_2 |
Soustrait value_2 de value_1 . |
* |
value_1 * value_2 |
Multiplie value_1 et value_2 . |
/ |
value_1 / value_2 |
Divise value_1 par value_2 . |
Fonctions de chaîne
Les fonctions de chaîne sont utilisées dans les phrases, les mots ou les lettres, collectivement appelés "chaînes". Vous pouvez utiliser les fonctions de chaîne pour capitaliser des mots et lettres, extraire des parties de phrases, vérifier si un mot ou une lettre se trouve dans une phrase ou remplacer des éléments d'un mot ou d'une phrase. Les fonctions de chaîne peuvent également être utilisées pour formater des données renvoyées dans la table.
Fonctions utilisées dans n'importe quelle expression Looker
Fonctions destinées uniquement aux calculs de table
Fonctions de date
Les fonctions de date vous permettent d'utiliser des dates et des heures.
Fonctions utilisées dans n'importe quelle expression Looker
Fonction | Syntaxe | Objectif |
---|---|---|
add_days |
add_days(number, date) |
Ajoute number jours à date . |
add_hours |
add_hours(number, date) |
Ajoute number heures à date . |
add_minutes |
add_minutes(number, date) |
Ajoute number minutes à date . |
add_months |
add_months(number, date) |
Ajoute number mois à date . |
add_seconds |
add_seconds(number, date) |
Ajoute number secondes à date . |
add_years |
add_years(number, date) |
Ajoute number ans à date . |
date |
date(year, month, day) |
Renvoie "year-month-day " date ou null si elle est incorrecte. |
date_time |
date_time(year, month, day, hours, minutes, seconds) |
Renvoie la date year-month-day hours:minutes:seconds ou null si la date n'est pas valide. |
diff_days |
diff_days(start_date, end_date) |
Renvoie le nombre de jours entre start_date et end_date . Pour obtenir un exemple, consultez le post destiné à la communauté Utiliser des dates dans les calculs de table. |
diff_hours |
diff_hours(start_date, end_date) |
Renvoie le nombre d'heures entre start_date et end_date . |
diff_minutes |
diff_minutes(start_date, end_date) |
Renvoie le nombre de minutes entre start_date et end_date . Pour obtenir un exemple, consultez le post destiné à la communauté Utiliser des dates dans les calculs de table. |
diff_months |
diff_months(start_date, end_date) |
Renvoie le nombre de mois compris entre start_date et end_date . Pour obtenir un exemple, consultez le post destiné à la communauté Grouper par dimension dans les calculs de table. |
diff_seconds |
diff_seconds(start_date, end_date) |
Renvoie le nombre de secondes entre start_date et end_date . |
diff_years |
diff_years(start_date, end_date) |
Renvoie le nombre d'années entre start_date et end_date . |
extract_days |
extract_days(date) |
Extraction des jours de date . Pour obtenir un exemple, consultez le post destiné à la communauté Utiliser des dates dans les calculs de table. |
extract_hours |
extract_hours(date) |
Extrait les heures de date . |
extract_minutes |
extract_minutes(date) |
Extrait les minutes de date . |
extract_months |
extract_months(date) |
Extrait les mois de date . |
extract_seconds |
extract_seconds(date) |
Extrait les secondes de date . |
extract_years |
extract_years(date) |
Extraction des années de date . |
now |
now() |
Renvoie la date et l'heure actuelles Pour obtenir des exemples d'utilisation de now , consultez les posts destinés à la communauté concernant Now() Table Calculation Function Has Better Timezone Handling (La fonction de calcul de la table Now()) et l'utilisation de dates dans les calculs de tables. |
trunc_days |
trunc_days(date) |
Tronque date en jours. |
trunc_hours |
trunc_hours(date) |
Tronque date en heures. |
trunc_minutes |
trunc_minutes(date) |
Tronque date en minutes. |
trunc_months |
trunc_months(date) |
Tronque date en mois. |
trunc_years |
trunc_years(date) |
Tronque date en années. |
Fonctions destinées uniquement aux calculs de table
Fonction | Syntaxe | Objectif |
---|---|---|
to_date |
to_date(string) |
Renvoie la date et l'heure correspondant à string (AAAA, AAAA-MM, AAAA-MM-JJ, AAAA-MM-JJ hh, AAAA-MM-JJ hh:mm ou AAAA-MM-JJ hh:mm:ss). |
Fonctions logiques, opérateurs et constantes
Les fonctions logiques et les opérateurs permettent d'évaluer si la valeur d'un élément est « true » ou « false ». Les expressions utilisant ces éléments prennent une valeur, la comparent à plusieurs critères, renvoient Yes
si les critères sont respectés et No
dans le cas contraire. Il existe également plusieurs opérateurs logiques différents permettant de comparer des valeurs et de les combiner à des expressions logiques.
Fonctions utilisées dans n'importe quelle expression Looker
Fonction | Syntaxe | Objectif |
---|---|---|
case |
case(when(yesno_arg, value_if_yes), when(yesno_arg, value_if_yes), ..., else_value) |
AJOUTÉ 21.10
Permet d'utiliser une logique conditionnelle avec plusieurs conditions et résultats. Renvoie value_if_yes pour le premier cas when dont la valeur yesno_arg est yes . Renvoie else_value si tous les cas when sont no . |
coalesce |
coalesce(value_1, value_2, ...) |
Renvoie la première valeur non-null dans value_1 , value_2 , ... , value_n si elle est trouvée, et null dans le cas contraire. Pour obtenir des exemples d'utilisation de coalesce , consultez les posts de la communauté Créer un total cumulé entre les lignes avec des calculs de table, Créer un pourcentage du total entre les lignes avec des calculs de table et Utiliser pivot_index dans les calculs de table. |
if |
if(yesno_expression, value_if_yes, value_if_no) |
Si yesno_expression est Yes , renvoie la valeur value_if_yes . Sinon, renvoie la valeur value_if_no . Pour obtenir un exemple, consultez le post destiné à la communauté Grouper par dimension dans les calculs de table. |
is_null |
is_null(value) |
Renvoie Yes si la valeur de value est null , et No dans le cas contraire. Pour obtenir un exemple, consultez la page de documentation Créer des expressions Looker. Pour un autre exemple utilisant is_null avec l'opérateur NOT , consultez la page de documentation Utiliser les calculs de table. |
Opérateurs utilisés dans n'importe quelle expression Looker
Les opérateurs de comparaison suivants peuvent être utilisés avec n'importe quels types de données :
Les opérateurs de comparaison suivants peuvent être utilisés avec des nombres, des dates et des chaînes:
Vous pouvez également combiner des expressions Looker avec les opérateurs logiques suivants :
Ces opérateurs logiques doivent être écrits en majuscules. Ceux écrits en minuscules ne fonctionneront pas.
Constantes logiques
Vous pouvez utiliser des constantes logiques dans les expressions Looker. Elles sont toujours écrites en minuscules et leurs significations sont les suivantes :
Constante | Signification |
---|---|
yes |
Vrai |
no |
Faux |
null |
Aucune valeur |
Notez que les constantes yes
et no
sont des symboles spéciaux qui signifient "true" ou "false" dans les expressions Looker. En revanche, l'utilisation de guillemets, comme dans "yes"
et "no"
, crée des chaînes littérales avec ces valeurs.
Les expressions logiques attribuent la valeur true ou false après évaluation, sans exiger une fonction if
. Par exemple, ceci :
if(${field} > 100, yes, no)
équivaut à l'expression :
${field} > 100
Vous pouvez également utiliser null
pour indiquer qu'il n'y a aucune valeur. Par exemple, lorsque vous souhaitez indiquer qu'un champ est vide ou assigner une valeur vide dans une situation donnée. Cette formule ne renvoie aucune valeur si le champ affiche une valeur inférieure à 1 ou la valeur du champ si elle est supérieure à 1 :
if(${field} < 1, null, ${field})
Combiner les opérateurs AND
et OR
Les opérateurs AND
sont évalués avant les opérateurs OR
, si vous n'indiquez pas leur ordre entre parenthèses. C'est la raison pour laquelle l'expression suivante sans parenthèses supplémentaires
if (
${order_items.days_to_process}>=4 OR
${order_items.shipping_time}>5 AND
${order_facts.is_first_purchase},
"review", "okay")
sera évaluée comme suit :
if (
${order_items.days_to_process}>=4 OR
(${order_items.shipping_time}>5 AND ${order_facts.is_first_purchase}),
"review", "okay")
Fonctions positionnelles
Lors de la création de calculs de table, vous pouvez utiliser des fonctions de transformation positionnelle pour extraire des informations concernant les champs figurant dans les différentes lignes ou colonnes d'un tableau croisé dynamique. Vous pouvez aussi créer des listes et extraire une ligne en cours ou l'index des colonnes d'un tableau croisé dynamique.
Nombre total de colonnes et de lignes uniquement utilisées pour réaliser des calculs de table
Si votre exploration contient des totaux, vous pouvez référencer des valeurs totales pour les colonnes et les lignes:
Fonction | Syntaxe | Objectif |
---|---|---|
:total |
${field:total} |
Renvoie le total de la colonne du champ |
:row_total |
${field:row_total} |
Renvoie le total de ligne du champ |
Fonctions de lignes destinées uniquement aux calculs de table
Certaines de ces fonctions utilisent les positions relatives des lignes. Donc, si vous changez l'ordre de tri des lignes, les résultats de ces fonctions seront alors modifiés.
Fonction | Syntaxe | Objectif |
---|---|---|
index |
index(expression, n) |
Renvoie la valeur du n e élément de la colonne créée par expression , sauf si expression définit une colonne de listes, auquel cas elle renvoie le n e élément de chaque liste. |
list |
list(value_1, value_2, ...) |
Crée une liste à partir de valeurs données. Pour obtenir un exemple, consultez le post de la communauté Utiliser des listes dans les calculs de table. |
lookup |
lookup(value, lookup_column, result_column) |
Renvoie la valeur dans result_column qui se trouve sur la même ligne que value dans lookup_column . |
offset |
offset(column, row_offset) |
Renvoie la valeur de la ligne (n + row_offset) dans column , où n est le numéro de ligne actuel. Pour obtenir des exemples d'utilisation de offset , consultez la page des bonnes pratiques sur le calcul du pourcentage par rapport à la valeur précédente et du pourcentage de variation à l'aide de calculs de table. |
offset_list |
offset_list(column, row_offset, num_values) |
Renvoie une liste des valeurs num_values à partir de la ligne (n + row_offset) dans column , où n correspond au numéro de ligne actuel. Pour obtenir un exemple, consultez le post destiné à la communauté Calcul des moyennes mobiles. |
row |
row() |
Renvoie le numéro de la ligne en cours. |
Fonctions de tableau croisé dynamique destinées uniquement aux calculs de table
Certaines de ces fonctions utilisent les positions relatives des colonnes d'un tableau croisé dynamique. Donc, si vous changez l'ordre de tri d'une dimension dynamique, les résultats de ces fonctions seront alors modifiés.
Fonction | Syntaxe | Objectif |
---|---|---|
pivot_column |
pivot_column() |
Renvoie l'index de la colonne du tableau croisé dynamique en cours. |
pivot_index |
pivot_index(expression, pivot_index) |
Évalue expression dans le contexte de la colonne du tableau croisé dynamique à la position pivot_index (1 pour le premier tableau croisé dynamique, 2 pour le second tableau croisé dynamique, etc.). Renvoie la valeur null dans le cas de résultats non dynamiques. Pour obtenir des exemples d'utilisation de pivot_index , consultez les posts destinés à la communauté concernant l'utilisation de pivot_index dans les calculs de table et la création d'un pourcentage du total entre les lignes avec des calculs de table. |
pivot_offset |
pivot_offset(pivot_expression, col_offset) |
Renvoie la valeur de pivot_expression à la position (n + col_offset) , où n correspond à la position actuelle de la colonne du tableau croisé dynamique. Renvoie la valeur null dans le cas de résultats non dynamiques. Pour obtenir des exemples d'utilisation de pivot_offset , consultez le post de la communauté Créer un total cumulé sur plusieurs lignes avec des calculs de table et la page des bonnes pratiques Calcul du pourcentage de la variation précédente et du pourcentage avec des calculs de table. |
pivot_offset_list |
pivot_offset_list(pivot_expression, col_offset, num_values) |
Renvoie une liste des valeurs num_values dans pivot_expression à partir de la position (n + col_offset) , où n est l'index de tableau croisé dynamique actuel. Renvoie null pour les résultats non dynamiques. |
pivot_row |
pivot_row(expression) |
Renvoie les valeurs pivotées de expression sous forme de liste. Renvoie null pour les résultats non dynamiques. Pour obtenir des exemples d'utilisation de pivot_row , consultez les pages Agrégation sur plusieurs lignes (Total des lignes) dans les calculs de table et How to Calculate Percent-of-Total (Bonnes pratiques). |
pivot_where |
pivot_where(select_expression, expression) |
Renvoie la valeur de expression pour la colonne du tableau croisé dynamique répondant à select_expression ou null si une telle colonne unique n'existe pas. |
Les fonctions de tableau croisé dynamique spécifiques que vous utilisez déterminent si le calcul de table s'affichera en regard de chaque colonne dynamique ou en tant que colonne unique à la fin de la table.
Fonctions de filtrage pour des filtres et champs personnalisés
Les fonctions de filtrage vous permettent d'utiliser des expressions de filtrage pour renvoyer des valeurs basées sur des données filtrées. Les fonctions de filtrage fonctionnent dans les filtres personnalisés, les filtres sur les mesures personnalisées et les dimensions personnalisées, mais ne sont pas valides dans les calculs de table.
Fonction | Syntaxe | Objectif |
---|---|---|
matches_filter |
matches_filter(field, filter_expression) |
Renvoie Yes si la valeur du champ correspond à l'expression de filtre, et No dans le cas contraire. |