Notification

Cet article concerne Looker Studio. Pour accéder à la documentation Looker, consultez https://cloud.google.com/looker/docs/intro.

CASE

Évalue une liste de conditions et renvoie la première expression de résultat correspondante.

L'expression CASE définit une ou plusieurs conditions et renvoie un résultat lorsqu'une condition est remplie. Vous pouvez définir un résultat par défaut si aucune des conditions n'est remplie.

Au sommaire de cet article :

Exemple

L'expression CASE sert généralement à créer des catégories ou des regroupements de données. Par exemple, pour regrouper certaines valeurs de pays dans une dimension Région de vente, vous pourriez créer une expression CASE de ce type :

CASE 
    WHEN Country IN ("USA","Canada","Mexico") THEN "North America" 
    WHEN Country IN ("England","France") THEN "Europe" 
    ELSE "Other" 
END

Fonctionnement de CASE élaboré

Une expression CASE commence par le mot clé CASE et se termine par le mot clé END. Entre les deux se trouvent un certain nombre de sections ou clauses :

  • WHEN : condition que vous souhaitez évaluer. Une expression CASE peut contenir plusieurs clauses WHEN.
  • THEN : résultat à renvoyer si la condition de la clause WHEN est true. Une expression CASE doit contenir une clause THEN pour chaque clause WHEN.
  • ELSE : facultatif. Si aucune des conditions de la clause WHEN n'est true, CASE renvoie la valeur de la clause ELSE, ou la valeur NULL si aucune clause ELSE n'est spécifiée.

L'expression CASE évalue successivement chaque clause WHEN et renvoie le premier résultat pour lequel la condition est true. Les clauses WHEN restantes et le résultat ELSE ne sont alors pas évalués. Si toutes les conditions WHEN sont "false" ou NULL, l'expression CASE renvoie le résultat ELSE. Si aucune clause ELSE n'est précisée, elle renvoie la valeur NULL.

Syntaxe de CASE élaboré


CASE
    WHEN condition THEN result
    [WHEN condition THEN result]
    [...]
    [ELSE else_result]
END

Paramètres

WHEN condition

Les conditions WHEN évaluent vos données et renvoient la valeur "true" si la condition spécifiée est remplie ou "false" si ce n'est pas le cas. Vous pouvez utiliser n'importe quelle expression booléenne valide en tant que condition WHEN.

THEN result

Chaque condition WHEN doit contenir une clause THEN correspondante, qui indique les résultats si la condition est "true". En présence de plusieurs conditions WHEN, l'expression CASE renvoie le résultat de la première condition "true".

Remarques

Tous les résultats potentiels d'une clause THEN doivent être du même type.

Par exemple, si la première clause THEN renvoie une valeur textuelle, les autres clauses THEN, comme la clause ELSE, doivent également renvoyer une valeur textuelle.

ELSE else_result

La clause facultative ELSE spécifie un résultat par défaut. Cette clause est renvoyée si aucune des clauses WHEN n'est "true". Si une expression CASE ne comporte aucune clause ELSE et qu'aucune des clauses WHEN n'est "true", l'instruction renvoie la valeur NULL.

Une expression CASE ne peut contenir qu'une seule clause ELSE.

Autres exemples

Vérifier une inégalité

CASE WHEN Medium != "cpc" THEN "gratuit" ELSE "payant" END
Pour les scénarios simples, envisagez plutôt d'utiliser la fonction IF.

Classifier des valeurs de dimension numérique au sein de buckets discrets

Par exemple, vous pouvez séparer des commandes selon trois tailles ("Petite", "Moyenne" et "Grande") basées sur le montant des commandes :

CASE
    WHEN Montant < 20 THEN "Petite"
    WHEN Montant >= 20 and Montant < 100 THEN "Moyenne"
    WHEN Montant >= 100 THEN "Grande"
END
Vous pouvez également utiliser un champ calculé de type Groupe afin de créer des groupes ad hoc pour les valeurs de dimension.

Évaluer une condition AND logique

CASE 
    WHEN Country ISO Code = "US" AND Medium = "cpc" 
    THEN "US - Payant" 
    ELSE "autre" 
END

Évaluer une condition AND/OR logique

CASE 
    WHEN REGEXP_MATCH(Titre de la vidéo, ".*Google Analytics*")
    AND diffusion_en_direct = TRUE 
    OR Longueur de la vidéo > 600 
    THEN "Diffusion en direct GA ou longue vidéo" 
END

Évaluer un paramètre

Par exemple, vous pouvez définir un paramètre de cible de vente "Objectif de ventes" et l'ajuster de façon à afficher les commandes qui ont atteint l'objectif :

CASE WHEN Qty Sold >= Sales target parameter THEN 1 ELSE 0 END


Renvoyer un autre champ ou une autre valeur en fonction d'une valeur de paramètre

Le premier exemple renvoie une dimension basée sur la valeur de paramètre sélectionnée. Avec cette approche, les utilisateurs peuvent passer d'une dimension de répartition à un graphique.

Le deuxième exemple illustre comment renvoyer une autre métrique basée sur une valeur de paramètre.

CASE 
    WHEN Répartition = "Catégorie de produit" THEN Catégorie de produit 
    WHEN Répartition = "Magasin" THEN Magasin 
END


## Remarque : Vous pouvez aussi utiliser la syntaxe CASE simple suivante :

CASE Répartition 
    WHEN "Catégorie de produit" THEN Catégorie de produit
    WHEN "Magasin" THEN Magasin
END

CASE WHEN Afficher le coût ajusté = TRUE THEN Coût + Ajustements ELSE Coût END

Instructions CASE imbriquées

Vous pouvez imbriquer des instructions CASE pour créer une logique d'embranchement plus complexe :

CASE WHEN REGEXP_CONTAINS(SKU, "Chapeaux") THEN
   CASE WHEN Couleur = "bleu"
        THEN "CHAPEAU BLEU"
        ELSE "JUSTE UN CHAPEAU"
   END 
ELSE 
  "PAS UN CHAPEAU"
END

Ces informations vous-ont elles été utiles ?

Comment pouvons-nous l'améliorer ?
true
Quoi de neuf dans Looker Studio ?

Découvrez les nouvelles fonctionnalités et les modifications récentes. Les notes de version de Looker Studio sont disponibles sur Google Cloud.

Recherche
Effacer la recherche
Fermer le champ de recherche
Menu principal
5798098227849650698
true
Rechercher dans le centre d'aide
true
true
true
true
true
102097
false
false