Utilisation d'expressions

Les expressions Analytics sont des combinaisons de valeurs et d'opérateurs qui effectuent un calcul et renvoient un résultat.

Les expressions constituent un outil précieux d'une grande souplesse. Elles vous permettent :

  • d'exécuter un grand nombre de calculs ;
  • de créer des filtres ;
  • de préparer des données pour analyse ;
  • de créer des champs calculés.

Contenu des expressions

Les expressions peuvent comprendre des champs de données, des fonctions, des valeurs littérales, des constantes et des variables, que vous pouvez combiner à l'aide d'opérateurs arithmétiques ou logiques.

Vous pouvez saisir des expressions manuellement ou en générer à l'aide du Générateur d'expression, qui fournit un utilitaire standard dans Analytics permettant de créer des expressions.Analytics

Complexité des expressions

Elles peuvent être aussi simples ou aussi complexes que nécessaire.

Une expression simple peut renvoyer le résultat d'une opération arithmétique de base.

Par exemple :

Quantité * Coût

Une expression plus complexe peut référencer un nombre de champs et de fonctions et utiliser des opérateurs pour combiner les différentes parties de l'expression.

Par exemple :

PROPER(prénom) + " " + PROPER(nom)

convertit tous les noms des champs prénom et nom pour qu'ils présentent la casse appropriée (première lettre en majuscule, les lettres suivantes en minuscules) et pour que le prénom et le nom soient séparés d'un seul espace entre eux.

Types d'expressions

Analytics prend en charge quatre types d'expressions qui correspondent aux quatre catégories ou types de données pris en charge :

  • caractère
  • numérique
  • DateHeure
  • logique

Par exemple :

  • Montant + 1 correspond à une expression numérique car elle exécute une opération au niveau des nombres et retourne un résultat numérique.
  • Montant > 1 est une expression logique car elle engendre une comparaison et retourne un résultat logique comme Vrai ou Faux.

Le contenu de toute expression que vous créez doit correspondre au type de l'expression :

Type d'expression Contenu requis Exemple
Caractère Contient l'un des éléments suivants :
  • champs caractères
  • variables contenant des données de type caractère
  • fonctions retournant des valeurs de type caractère
  • chaînes entre guillemets (caractères littéraux)

Extrait les chiffres d'un code de produit et abandonne le préfixe à trois caractères :

  • SUBSTR(Code_produit, 4, 10)
Numérique Contient l'un des éléments suivants :
  • champs numériques
  • variables contenant des données numériques
  • fonctions retournant des valeurs numériques
  • valeurs numériques littérales, sans guillemets – limitées en chiffres, un signe moins au besoin, et une décimale si nécessaire

Calculaer le prix de vente plus taxe :

  • Prix_vente * 1,07

Trouver la valeur maximale dans trois champs :

  • MAXIMUM(Qté_min, Qté_disponible, Qté_en_cours)
DateHeure Contient l'un des éléments suivants :
  • champs DateHeure
  • variables contenant des valeurs de type DateHeure
  • fonctions retournant des valeurs de type DateHeure
  • les valeurs de type DateHeure entre guillemets (littérales de type DateHeure)

Le type de données DateHeure intègre trois sous-types : date, DateHeure et heure.

Les valeurs DateHeure entre guillemets exigent des guillemets inversés, par exemple, ‘20141231‘ ou ‘20141231,235959‘. Le guillemet inversé (`) est la touche minuscule dans le coin supérieur gauche du clavier.

Calcule le nombre de jours écoulés entre les deux dates :

  • `20141231` - `20141130`

Calcule la durée écoulée entre les valeurs des deux champs d'heure :

  • Heure_fin - Heure_début
Logique Contient l'un des éléments suivants :
  • une opération générant un résultat logique Vrai ou Faux (T ou F)
  • Les fonctions retournant des valeurs logiques

Si T ou F font partie de l'expression, elles doivent être entrées sans guillemets.

Remarque

Une expression logique peut faire référence à des champs, à des variables ou des valeurs littérales de n'importe quel type de données.

Recherche tous les enregistrement dont la date de paiement a dépassé la date d'échéance :

  • Date_paiement > Date_échéance

Filtre les enregistrements dans une table à trois villes :

  • MATCH(Ville_fournisseur; "Phoenix"; "Austin"; "Los Angeles")

Évaluation des expressions dans Analytics

Dans Analytics, les expressions sont évaluées selon les règles suivantes.

Domaine fonctionnel Règle
Priorité de l'opérateur La priorité arithmétique et logique détermine l'ordre dans lequel les opérateurs sont évalués. Consultez la section Opérateurs dans les expressions Analytics.

Utiliser des parenthèses ( ) pour modifier l'ordre d'évaluation des opérateurs.

Type de données de l'opérande Chaque opérateur fonctionne uniquement si ses opérandes sont d'un type de données compatible.
Parenthèses de fonction Toutes les fonctions Analytics exigent des parenthèses. L'intérieur des parenthèses d'une fonction est évalué en premier, avant les autres parties d'une expression qui se trouvent en dehors des parenthèses de la fonction.
Comparaison des chaînes de caractère Par défaut, lorsque des chaînes de caractères de longueur différente sont comparées, la plus courte est utilisée.

Si l'option Comparaisons exactes de caractères est sélectionnée dans l'onglet Tables de la boîte de dialogue Options, la chaîne la plus longue est utilisée.

Pour plus d'informations, consultez la section Options de table.

Précision décimale

Si des nombres avec des précisions décimales différentes sont utilisés dans une expression numérique, le résultat conserve le nombre de décimales de l'opérande ayant le plus de décimales. (Ce comportement par défaut peut être modifié avec la commande SET MATH.)

Par exemple :

  • 4 + 5,0 = 9,0
  • 6 * 2,000000 = 12,000000
  • 1,1 * 1,1 = 1,2
  • 1,1 * 1,10 = 1,21

Pour plus d'informations, consultez la section Contrôle de l'arrondi et de la précision décimale dans les expressions numériques.

Opérateurs dans les expressions Analytics

Le tableau ci-dessous répertorie les opérateurs que vous pouvez utiliser dans la création d'expressions.

Les opérateurs sont répertoriés dans l'ordre de priorité décroissant. Lorsque des opérateurs de priorité égale apparaissent dans une expression, ils sont évalués de gauche à droite, sauf si vous utilisez des parenthèses pour spécifier un ordre particulier d'évaluation.

 

Opérateurs dans l'ordre de priorité

Description

( )

Les parenthèses modifient la priorité de l'opérateur ou entourent les paramètres des fonctions

NOT

-

NOT logique

Le moins unaire, ou le signe négatif, indique un nombre négatif

^

L'exponentiation élève un nombre à une puissance

*

/

Les opérateurs ont une priorité identique et sont évalués de gauche à droite

Multiplier

Diviser

+

-

Les opérateurs ont une priorité identique et sont évalués de gauche à droite

Ajouter

Soustraire

+

Concaténer des chaînes de caractères

>

<

=

>=

<=

<>

Les opérateurs ont une priorité identique et sont évalués de gauche à droite

Remarque

Les opérateurs avec deux symboles ne doivent pas contenir d'espace. Par exemple, saisissez >= et non > = .

Supérieur à

Inférieur à

Égal à

Supérieur ou égal à

Inférieur ou égal à

Différent de

AND (ou &)

AND logique

OR (ou |)

OR logique