Les expressions sont utilisées pour effectuer des calculs :
- Calculs de tables (y compris les expressions utilisées dans les tests de données)
- Champs personnalisés
- Filtres personnalisés
Les fonctions et les opérateurs que vous pouvez utiliser dans ces expressions constituent une partie importante de celles-ci. Les fonctions et les opérateurs peuvent être divisés en quelques catégories de base :
- Mathématiques : fonctions liées aux nombres
- Chaîne de caractères : Fonctions liées aux mots et aux lettres
- Dates : Fonctions liées à la date et à l'heure
- Transformation logique : Inclut les fonctions booléennes (vrai ou faux) et les opérateurs de comparaison.
- Transformation positionnelle : Récupération de valeurs à partir de différentes lignes ou pivots
Certaines fonctions ne sont disponibles que pour les calculs de tableaux
Les expressions pour les filtres et champs personnalisés ne prennent pas en charge les fonctions qui convertissent les types de données, agrègent les données de plusieurs lignes ou font référence à d'autres lignes ou colonnes pivotantes. Ces fonctions ne sont prises en charge que pour les calculs de tableaux (y compris les calculs de tableaux utilisés dans le paramètre d'expression d'un test de données).
Cette page est organisée de manière à clarifier les fonctions et les opérateurs disponibles, en fonction de l'endroit où vous utilisez votre expression.
Fonctions et opérateurs mathématiques
Les fonctions et les opérateurs mathématiques fonctionnent de deux manières :
- Certaines fonctions mathématiques effectuent des calculs sur la base d'une seule ligne. Par exemple, les fonctions d'arrondi, d'addition, de multiplication et autres fonctions similaires peuvent être utilisées pour les valeurs d'une seule ligne, en renvoyant une valeur distincte pour chaque ligne. Tous les opérateurs mathématiques, tels que +, sont appliqués une ligne à la fois.
- D'autres fonctions mathématiques, comme les moyennes et les totaux courants, fonctionnent sur plusieurs lignes. Ces fonctions prennent plusieurs lignes et les réduisent à un seul nombre, puis affichent ce même nombre sur chaque ligne.
Fonctions pour toute expression
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| round | round (valeur, num_decimals) | Rend la valeur arrondie à num_decimals décimales. Pour des exemples d'utilisation de la fonction round, consultez les sujets de la communauté « Utilisation de pivot_index dans les calculs de table » et « Écart type et détection simple des valeurs aberrantes dans les séries chronologiques à l'aide des calculs de table ». |
Fonctions pour les calculs de tableaux uniquement
Avertissement
Nombre de ces fonctions portent sur de nombreuses lignes et ne prendront en compte que les lignes renvoyées par votre rapport.
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| count | count (expression) | Renvoie le nombre de valeurs non nulles dans la colonne définie par l'expression, sauf si l'expression définit une colonne de listes, auquel cas elle renvoie le nombre dans chaque liste. |
| count_distinct | count_distinct (expression) | Renvoie le nombre de valeurs distinctes non nulles dans la colonne définie par l'expression, sauf si l'expression définit une colonne de listes, auquel cas elle renvoie le nombre dans chaque liste. |
| max | max(expression) | Retourne le maximum de la colonne créée par expression, sauf si une expression définit une colonne de listes, auquel cas retourne le maximum de chaque liste. Pour des exemples utilisant max, voir les listes d’utilisation dans les calculs de table et Groupement par dimension dans les calculs de tableaux Sujets communautaires. |
| mean | mean(expression) | Retourne la moyenne de la colonne créée par expression, sauf si une expression définit une colonne de listes, auquel cas retourne la moyenne de chaque liste. Pour des exemples utilisant la moyenne, voir l’article du Centre d’aide Calculating Moving Medias et le sujet Deviation type et détection des valeurs aberrantes simples en série temporelle utilisant le sujet Communauté Table Calculations. |
| min | min(expression) | Renvoie le min de la colonne créée par l'expression, sauf si l'expression définit une colonne de listes, auquel cas elle renvoie le min de chaque liste. |
| percent_rank | percent_rank(colonne, valeur) | Renvoie le rang de la valeur dans la colonne sous la forme d'un pourcentage compris entre 0 et 1 inclus. |
| percentile | percentile (colonne_valeur,valeur_percentile) | Renvoie la valeur de la colonne créée par l'expression correspondant à la valeur_percentile donnée, sauf si l'expression définit une colonne de listes, auquel cas elle renvoie la valeur du percentile pour chaque liste. percentile_value doit être compris entre 0 et 1, sinon il renvoie null. |
| rank | rang (valeur, expression) | Renvoie le rang de la valeur dans la colonne créée par l'expression. |
| rank_avg | rank_avg(valeur, expression) | Renvoie le rang moyen de la valeur dans la colonne créée. |
| running_total | total_courant(colonne_valeur) | Renvoie un total courant des valeurs de la colonne value_column. |
| sum | sum(expression) | Renvoie la somme de la colonne créée par l'expression, sauf si l'expression définit une colonne de listes, auquel cas elle renvoie la somme de chaque liste. |
Opérateurs pour toute expression
Vous pouvez utiliser les opérateurs mathématiques standard suivants :
| OPERATOR | SYNTAX | PURPOSE |
|---|---|---|
| + | value_1 + value_2 | Ajoute la valeur_1 et la valeur_2. |
| – | value_1 – value_2 | Soustrait la valeur_2 de la valeur_1. |
| * | value_1 * value_2 | Multiplie la valeur_1 et la valeur_2. |
| / | value_1 / value_2 | Divise la valeur_1 par la valeur_2. |
Fonctions des chaînes de caractères
Les fonctions de chaîne opèrent sur des phrases, des mots ou des lettres, qui sont collectivement appelés "chaînes". Vous pouvez utiliser les fonctions de chaîne pour mettre des mots et des lettres en majuscules, extraire des parties d'une phrase, 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 les données renvoyées dans le tableau.
Fonctions pour toute expression
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| concat | concat (value_1, value_2, …) | Renvoie la valeur_1, la valeur_2, ..., la valeur_n sous la forme d'une chaîne de caractères. |
| contains | contains (string, search_string) | Renvoie Oui si la chaîne contient la chaîne_de_recherche, et Non dans le cas contraire. |
| length | longueur (chaîne) | Renvoie le nombre de caractères de la chaîne. |
| lower | inférieur (chaîne) | Renvoie une chaîne dont tous les caractères ont été convertis en minuscules. |
| position | position (chaîne, chaîne_de_recherche) | Renvoie l'index de départ de search_string dans string s'il existe, et 0 sinon. |
| replace | replace (string, old_string, new_string) | Renvoie une chaîne dont toutes les occurrences de l'ancienne chaîne sont remplacées par la nouvelle. |
| substring | substring (string, start_position, length) | Renvoie la sous-chaîne de la chaîne commençant à la position de départ, composée de caractères de longueur. |
| upper | upper (string) | Renvoie une chaîne dont tous les caractères ont été convertis en majuscules. |
Fonctions pour les calculs de tableaux uniquement
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| to_number | to_number(string) | Renvoie le nombre représenté par la chaîne, ou null si la chaîne ne peut pas être convertie. |
| to_string | to_string(valeur) | Renvoie la représentation sous forme de chaîne de caractères de la valeur, ou une chaîne vide si la valeur est nulle. |
Fonctions de la date
Les fonctions de date vous permettent de travailler avec des dates et des heures.
Fonctions pour toute expression
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| add_days | add_days(number, date) | Ajoute le nombre de jours à la date. |
| add_months | add_months(number, date) | Ajoute le nombre de mois à la date. |
| date | date(année, mois, jour) | Renvoie la date "année-mois-jour" ou null si la date n'est pas valide. |
| date_time | date_time(year, month, jour, heures, minutes, secondes) | Returns Date « année-mois-jour heures:minutes:secondes » ou null si la date est invalide. |
| diff_days | diff_days(start_date, end_date) | Renvoie le nombre de jours entre la date de début et la date de fin. Pour un exemple, consultez le sujet de la communauté « Utilisation des dates dans les calculs de table ». |
| diff_months | diff_months(start_date, end_date) | Indique le nombre de mois entre start_date et end_date. Pour un exemple, consultez le sujet de la communauté « Regroupement par dimension dans les calculs de table ». |
| extract_days | extract_days(date) | Extrait les jours de la date. Pour un exemple, consultez le sujet de la communauté « Utilisation des dates dans les calculs de table ». |
| extract_months | extract_months(date) | Extrait les mois de la date. |
| now | maintenant() | Renvoie la date et l'heure actuelles. Pour des exemples d'utilisation de la fonction Now(), consultez les sujets de la communauté « La fonction de calcul de table Now() gère mieux les fuseaux horaires » et « Utilisation des dates dans les calculs de table ». |
| trunc_days | trunc_days(date) | Tronque la date en jours. |
| trunc_months | trunc_months(date) | Tronque la date en mois. |
Fonctions pour les calculs de tableaux uniquement
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| to_date | to_date(string) | Returns the date and time corresponding to string (YYYY, YYYY-MM, YYYY-MM-DD, YYYY-MM-DD hh, YYYY-MM-DD hh:mm, or YYYY-MM-DD hh:mm:ss). |
Fonctions logiques, opérateurs et constantes
Les fonctions logiques et les opérateurs sont utilisés pour déterminer si quelque chose est vrai ou faux. Les expressions utilisant ces éléments prennent une valeur, l'évaluent en fonction de certains critères, renvoient Oui si les critères sont remplis et Non si les critères ne sont pas remplis. Il existe également divers opérateurs logiques permettant de comparer des valeurs et de combiner des expressions logiques.
Fonctions pour toute expression
| FUNCTION | SYTAX | PURPOSE |
|---|---|---|
| coalesce | coalesce(valeur_1, valeur_2, ...) | Retourne la première valeur non nulle dans value_1, value_2, ..., value_n si trouvée et nulle sinon. Pour des exemples d'utilisation de coalesce, consultez les sujets de la communauté : Création d'un total cumulé sur les lignes avec des calculs de table, Création d'un pourcentage du total sur les lignes avec des calculs de table et Utilisation de pivot_index dans les calculs de table. |
| if | if(yesno_expression,value_if_yes, value_if_no) | Si yesno_expression évalue comme Oui, elle retourne la valeur value_if_yes. Sinon, retourne la valeur value_if_no. Pour un exemple, consultez le sujet de la communauté « Regroupement par dimension dans les calculs de table ». |
| is_null | is_null(valeur) | Renvoie Oui si la valeur est nulle, et Non sinon. Pour un exemple, consultez la page de documentation Utilisation des calculs de table. |
Opérateurs pour toute expression
Les opérateurs de comparaison suivants peuvent être utilisés avec n'importe quel type de données :
| OPERATOR | SYNTAX | PURPOSE |
|---|---|---|
| = | value_1 = value_2 | Renvoie Oui si la valeur_1 est égale à la valeur_2, et Non sinon. |
| != | value_1 != value_2 | Renvoie Oui si la valeur_1 n'est pas égale à la valeur_2, et Non sinon. |
Les opérateurs de comparaison suivants ne peuvent être utilisés qu'avec des nombres et des dates :
| OPERATOR | SYNTAX | PURPOSE |
|---|---|---|
| > | value_1 > value_2 | Renvoie Oui si la valeur_1 est supérieure à la valeur_2, et Non sinon. |
| < | value_1 < value_2 | Renvoie Oui si la valeur_1 est inférieure à la valeur_2, et Non sinon. |
| >= | value_1 >= value_2 | Renvoie Oui si la valeur_1 est supérieure ou égale à la valeur_2, et Non sinon. |
| <= | value_1 <= value_2 | Renvoie Oui si la valeur_1 est inférieure ou égale à la valeur_2, et Non sinon. |
Vous pouvez également combiner des expressions avec ces opérateurs logiques :
| OPERATOR | SYNTAX | PURPOSE |
|---|---|---|
| AND | value_1 AND value_2 | Renvoie Oui si la valeur_1 et la valeur_2 sont toutes deux Oui, et Non dans le cas contraire. |
| OR | value_1 OR value_2 | Renvoie Oui si la valeur_1 ou la valeur_2 est Oui, et Non sinon. |
| NOT | NOT value | Renvoie Oui si la valeur est Non, et Oui sinon. |
Avertissement
Ces opérateurs logiques doivent être mis en majuscules. Les opérateurs logiques écrits en minuscules ne fonctionnent pas.
Constantes logiques
Vous pouvez utiliser des constantes logiques dans les expressions. Ces constantes sont toujours écrites en minuscules et ont les significations suivantes :
| CONSTANT | MEANING |
|---|---|
| Oui | Vrai |
| no | False |
| null | No Value |
Notez que les constantes oui et non sont les symboles spéciaux qui signifient vrai ou faux dans les expressions. En revanche, l'utilisation de guillemets comme dans "oui" et "non" crée des chaînes littérales avec ces valeurs.
Les expressions logiques évaluent le vrai ou le faux sans nécessiter de fonction if. Par exemple, ceci :
si (${field} > 100, oui, non)
est équivalent à celui-ci :
${field} > 100
Vous pouvez également utiliser null pour indiquer qu'il n'y a pas de valeur. Par exemple, vous pouvez vouloir déterminer si un champ est vide ou lui attribuer une valeur vide dans une certaine situation. Cette formule ne renvoie aucune valeur si le champ est inférieur à 1, ou la valeur du champ s'il est supérieur à 1 :
if(${field} < 1, null, ${field})
Combinaison des opérateurs AND et OR
Les opérateurs AND sont évalués avant les opérateurs OR, si vous ne précisez pas l'ordre entre parenthèses.
Les fonctions de l'entreprise
Lors de la création de calculs de tableaux, vous pouvez utiliser des fonctions de transformation positionnelle pour extraire des informations sur des champs situés dans des lignes ou des colonnes pivotantes différentes. Vous pouvez également créer des listes et récupérer l'index de la ligne ou de la colonne pivot actuelle.
Totaux des colonnes et des lignes pour les calculs de tableaux uniquement
Si votre Explore contient des totaux, vous pouvez faire référence aux valeurs totales des colonnes et des lignes :
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| :total | ${field :total} | Renvoie le total de la colonne du champ. |
| :row_total | ${field :row_total} | Renvoie le total des lignes du champ. |
Fonctions relatives aux lignes pour les calculs de tableaux uniquement
Certaines de ces fonctions utilisent les positions relatives des lignes, de sorte que la modification de l'ordre de tri des lignes affecte les résultats des fonctions.
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| index | index(expression, n) | Renvoie la valeur du nième élément de la colonne créée par l'expression, sauf si l'expression définit une colonne de listes, auquel cas elle renvoie le nième élément de chaque liste. |
| list | list(value_1, value_2, …) | Crée une liste à partir des valeurs données. Pour un exemple, voir le sujet Communauté d’utilisation des listes dans les calculs de tableaux. |
| lookup | lookup(value, lookup_column, colonne_résultat) | Renvoie la valeur de la colonne de résultat qui se trouve sur la même ligne que la valeur de la colonne de recherche. |
| offset | offset(column, row_offset) | Pour des exemples d'utilisation de l'offset, consultez les articles du Centre d'aide Calculer le pourcentage de la valeur précédente et le pourcentage de changement avec les calculs de tableau et Utiliser l'offset et l'offset_pivot dans les calculs de tableau. |
| offset_list | offset_list(column, row_offset,num_values) | Renvoie une liste des valeurs num_values commençant à la ligne (n + row_offset) dans la colonne, où n est le numéro de ligne actuel. Pour un exemple, consultez l’article du Centre d’aide Calculating Moving Averages. |
| row | rangée () | Renvoie le numéro de ligne actuel. Pour un exemple, consultez l'article du Centre d'aide intitulé « Transposer le tableau (afficher les mesures sous forme de lignes) ». |
Fonctions liées au pivot pour les calculs de tableaux uniquement
Certaines de ces fonctions utilisent les positions relatives des colonnes pivots, de sorte que la modification de l'ordre de tri de la dimension pivotée affecte les résultats de ces fonctions.
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| pivot_column | pivot_column () | Renvoie l'index de la colonne pivot actuelle. |
| pivot_index | pivot_index (expression, pivot_index) | Évalue l’expression dans le contexte de la colonne pivot à la position pivot_index (1 pour le premier pivot, 2 secondes pivot, etc.). Retour nul pour les résultats non pivotés. Pour des exemples d'utilisation de pivot_index, consultez les sujets de la communauté « Utilisation de pivot_index dans les calculs de table » et « Création d'un pourcentage du total sur les lignes avec les calculs de table ». |
| pivot_offset | pivot_offset(pivot_expression, col_offset) | Retourne la valeur du pivot_expression en position (n + col_offset), où n est la position actuelle de la colonne pivot. Retour nul pour les résultats non pivotés. Pour des exemples d'utilisation de pivot_offset, consultez le sujet de la communauté « Création d'un total cumulé sur les lignes avec des calculs de table » et les articles du Centre d'aide « Calcul du pourcentage précédent et du pourcentage de variation avec des calculs de table » et « Utilisation de offset et pivot_offset dans les calculs de table ». |
| pivot_offset_list | pivot_offset_list (pivot_expression,col_offset, num_values) | Renvoie une liste des valeurs num_values de l'expression pivot à partir de la position (n + col_offset), où n est l'indice pivot actuel. Retourne null pour les résultats non divisés. |
| pivot_row | pivot_row(expression) | Retourne les valeurs pivotées de l’expression sous forme de liste. Retour nul pour les résultats non pivotés. Pour des exemples d'utilisation de pivot_row, consultez les articles du Centre d'aide « Agrégation des lignes (totaux des lignes) dans les calculs de table » et « Comment calculer le pourcentage du total ». |
| pivot_where | pivot_where(select_expression, expression) | Renvoie la valeur de l'expression pour la colonne pivot qui répond de manière unique à select_expression ou null si une telle colonne unique n'existe pas. |
Les fonctions pivot spécifiques que vous utilisez déterminent si le calcul du tableau est affiché à côté de chaque colonne pivotée ou s'il est affiché sous la forme d'une colonne unique à la fin du tableau.
Fonctions de filtrage pour les filtres et les 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 valables dans les calculs de tableaux.
| FUNCTION | SYNTAX | PURPOSE |
|---|---|---|
| matches_filter | matches_filter (champ, `expression_filtre`) | Retourne Oui si la valeur du champ correspond à l'expression du filtre, Non si ce n'est pas le cas. |

