Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

switch

Mode de mise au point
switch - Amazon QuickSight

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

switch compare une expression-condition avec les étiquettes littérales, dans un ensemble de paires d'étiquettes littérales et de return-expression. Il renvoie ensuite l'expression return-expression correspondant à la première étiquette littérale qui est égale à l'expression condition-expression. Si aucune étiquette n'est égale à l'expression condition-expression, switch renvoie l'expression default-expression. Chaque return-expression et default-expression doit avoir le même type de données.

Syntaxe

switch(condition-expression, label-1, return-expression-1 [, label-n, return-expression-n ...], default-expression)

Arguments

L'opérateur switch nécessite une ou plusieurs paires d'expressions if,then et requiert exactement une expression pour l'argument else.

condition-expression

L'expression à comparer avec l'étiquette-littérale. Il peut s'agir d'un nom de champ comme address, d'une valeur littérale comme « Unknown » ou d'une autre fonction scalaire comme toString(salesAmount).

étiquette

Le littéral à comparer avec l'argument de condition-expression, tous les littéraux doivent avoir le même type de données que l'argument de condition-expression. L'expression switch accepte jusqu'à 5000 étiquettes.

return-expression

L'expression à retourner si la valeur de son étiquette est égale à la valeur de condition-expression. Il peut s'agir d'un nom de champ comme address, d'une valeur littérale comme « Unknown » ou d'une autre fonction scalaire comme toString(salesAmount). Tous les arguments de return-expression doivent avoir le même type de données que default-expression.

default-expression

L'expression à renvoyer si aucune valeur des arguments de l'étiquette n'est égale à la valeur de condition-expression. Il peut s'agir d'un nom de champ comme address, d'une valeur littérale comme « Unknown » ou d'une autre fonction scalaire comme toString(salesAmount). default-expression doit avoir le même type de données que tous les arguments de return-expression.

Type de retour

switch renvoie une valeur du même type de données que les valeurs de return-expression. Toutes les données renvoyées par return-expression et default-expression doivent être du même type de données ou être converties dans le même type de données.

Exemples généraux

L'exemple suivant renvoie le Région AWS code du nom de la région d'entrée.

switch(region_name, "US East (N. Virginia)", "us-east-1", "Europe (Ireland)", "eu-west-1", "US West (N. California)", "us-west-1", "other regions")

Les valeurs suivantes sont celles du champ donné.

"US East (N. Virginia)" "US West (N. California)" "Asia Pacific (Tokyo)"

Pour ces valeurs, les valeurs suivantes sont renvoyées.

"us-east-1" "us-west-1" "other regions"

Utilisation d'un commutateur pour remplacer ifelse

Le cas d'utilisation ifelse suivant est un équivalent de l'exemple précédent, mais pour ifelse évaluer si les valeurs d'un champ sont égales à des valeurs littérales différentes, il est préférable d'utiliser switch à la place.

ifelse(region_name = "US East (N. Virginia)", "us-east-1", region_name = "Europe (Ireland)", "eu-west-1", region_name = "US West (N. California)", "us-west-1", "other regions")

Expression comme valeur de retour

L'exemple suivant utilise des expressions dans des return-expressions :

switch({origin_city_name}, "Albany, NY", {arr_delay} + 20, "Alexandria, LA", {arr_delay} - 10, "New York, NY", {arr_delay} * 2, {arr_delay})

L'exemple précédent modifie le temps de retard prévu pour chaque vol au départ d'une ville donnée.

Une image des résultats de l'exemple de fonction, présentés sous forme de tableau.

Rubrique suivante :

toLower

Rubrique précédente :

Substring
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.