switch - Amazon QuickSight

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

switch

switch vergleicht einen condition-expression (Bedingungsausdruck) mit den literalen Bezeichnungen innerhalb einer Reihe von Kombinationen aus literalen Bezeichnungen und Rückgabeausdrücken. Anschließend wird der return-expression (Rückgabeausdruck) zurückgegeben, der der ersten literalen Bezeichnung entspricht, die dem Bedingungsausdruck entspricht. Wenn kein Label dem condition-expression (Bedingungsausdruck) entspricht, gibt switch default-expression (Standardausdruck) zurück. Jeder return-expression (Rückgabeausdruck) und jeder default-expression (Standardausdruck) müssen denselben Datentyp haben.

Syntax

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

Argumente

switch erfordert mindestens ein oder mehrere if,then-Ausdruckspaar/e sowie genau einen Ausdruck für das else-Argument.

condition-expression (Bedingungsausdruck)

Der Ausdruck, der mit den label-literals (Labelliteralen) verglichen werden soll. Es kann sich dabei um einen Feldnamen wie address, einen literalen Wert wie „Unknown“ oder um eine sakalare Funktion wie toString(salesAmount) handeln.

Bezeichnung

Das Literal, das mit dem Argument ondition-expression (Bedingungsausdruck) verglichen werden soll. Alle Literale müssen denselben Datentyp wie das Argument Bedingungsausdruck haben. switch akzeptiert bis zu 5000 Bezeichnungen.

return-expressio (Rückgabeausdruck)

Der Ausdruck, der zurückgegeben werden soll, wenn der Wert seiner Bezeichnung dem Wert des condition-expression (Bedingungsausdrucks) entspricht. Es kann sich dabei um einen Feldnamen wie address, einen literalen Wert wie „Unknown“ oder um eine sakalare Funktion wie toString(salesAmount) handeln. Alle return-expression-Argumente müssen vom gleichen Datentyp wie alle default-expression-Argumente sein.

default-expression (Standardausdruck)

Der Ausdruck, der zurückgegeben werden soll, wenn kein Wert eines Bezeichungsarguments dem Wert des condition-expression (Bedingungsausdrucks) entspricht. Es kann sich dabei um einen Feldnamen wie address, einen literalen Wert wie „Unknown“ oder um eine sakalare Funktion wie toString(salesAmount) handeln. Der default-expression muss vom gleichen Datentyp wie alle return-expression-Argumente sein.

Rückgabetyp

switch gibt einen Wert desselben Typs wie die Werte in return-expression zurück. Alle Daten, die return-expression (Rückgabeausdruck) und default-expression (Standardausdruck) zurückgeben, müssen denselben Datentyp haben oder in denselben Datentyp konvertiert werden.

Allgemeine Beispiele

Im folgenden Beispiel wird der AWS-Region-Code des Eingaberegionsnamens zurückgegeben.

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

Das Feld enthält folgende Werte.

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

Für diese Feldwerte werden die folgenden Ergebniswerte zurückgegeben.

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

Verwenden Sie den Schalter zum Ersetzen von ifelse

Der folgende Anwendungsfall ifelse entspricht dem vorherigen Beispiel, wobei ifelse bewertet, ob Werte eines Felds unterschiedlichen literalen Werten entsprechen, und switch stattdessen besser verwendet werden sollte.

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")

Ausdruck als Rückgabewert

Das folgende Beispiel verwendet Ausdrücke in return-expressions (Rückgabeausdrücken):

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

Im vorherigen Beispiel wird die erwartete Verspätungszeit für jeden Flug aus einer bestimmten Stadt geändert.

Ein Image der Ergebnisse des Funktionsbeispiels in Tabellenform.