Freigeben über


FALL

✅ Azure Stream Analytics ✅ Fabric Eventstream

Wertet eine Liste der Bedingungen aus und gibt einen von mehreren möglichen Ergebnisausdrücken zurück.

Der CASE-Ausdruck hat zwei Formate:

  • Der einfache CASE-Ausdruck vergleicht einen Ausdruck mit einer Gruppe einfacher Ausdrücke, um das Ergebnis zu bestimmen.

  • Der durchsuchte CASE-Ausdruck wertet einen Satz boolescher Ausdrücke aus, um das Ergebnis zu bestimmen.

Für beide Formate ist ein ELSE-Argument erforderlich.

CASE kann in jeder Anweisung oder Klausel verwendet werden, die einen gültigen Ausdruck zulässt. Sie können CASE beispielsweise in Ausdrücken wie SELECT und in Klauseln wie WHERE und HAVING verwenden.

Syntax

Einfacher CASE-Ausdruck:

CASE input_expression
     WHEN when_expression THEN result_expression [ ...n ] 
     ELSE else_result_expression
END  

Durchsuchter CASE-Ausdruck:

CASE  
     WHEN Boolean_expression THEN result_expression [ ...n ]
     ELSE else_result_expression  
END  

Argumente

input_expression

Wird der Ausdruck ausgewertet, wenn das einfache CASE-Format verwendet wird. Der ausgewertete Wert wird mit dem when_expression verglichen.

WANN when_expression

Ist der Ausdruck, mit dem input_expression bei Verwendung des einfachen CASE-Formats verglichen wird. Die Typen der when_expressions müssen nicht unbedingt übereinstimmen.

WANN boolean_expression

Ist der boolesche Ausdruck, der bei Verwendung des durchsuchten CASE-Formats ausgewertet wird. Wenn dieser Ausdruck "true" auswertet, wird die entsprechende result_expression zurückgegeben.

DANN result_expression

Wird der Ausdruck zurückgegeben, wenn input_expressionwhen_expression (im einfachen CASE-Format) oder wenn boolean_expression als "true" ausgewertet wird (im durchsuchten CASE-Format).

ELSE-else_result_expression

Gibt den Ausdruck zurück, wenn keine der Bedingungen auf TRUE ausgewertet wird.

Rückgabetyp

Ist der höchste Rangfolgetyp aus der Gruppe von Typen in result_expression(n) und else_result_expression.

Beispiele

Verwenden der Auswahl mit einem einfachen CASE-Ausdruck:

  SELECT
    CASE vehicleType
      WHEN 'S' THEN 'Sedan'
      WHEN 'T' THEN 'Truck'
      WHEN 'V' THEN 'Van'
      ELSE NULL
    END as vehicleTypeName
  FROM vehicles

Verwenden der Auswahl mit durchsuchten CASE-Ausdruck:

  SELECT
    CASE
      WHEN temperature < 60 THEN 'Alert'
      ELSE 'OK'
    END as currentStatus
  FROM sensor