Case-Anweisungen - AWS IoT Core

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.

Case-Anweisungen

Case-Anweisungen können zum Branchen verwendet werden, wie etwa eine switch-Anweisung.

Syntax:

CASE v WHEN t[1] THEN r[1] WHEN t[2] THEN r[2] ... WHEN t[n] THEN r[n] ELSE r[e] END

Der Ausdruck v wird ausgewertet und die Übereinstimmung mit dem Wert jeder t[i]-Klausel abgeglichen. WHEN Bei einer Übereinstimmung wird der entsprechende r[i]-Ausdruck zum Ergebnis der CASE-Anweisung. Die WHEN-Klauseln werden der Reihe nach ausgewertet, sodass, wenn es mehr als eine übereinstimmende Klausel gibt, das Ergebnis der ersten übereinstimmenden Klausel zum Ergebnis der CASE-Anweisung wird. Wenn es keine Treffer gibt, ist r[e] derELSE Klausel das Ergebnis. Wenn es keine Übereinstimmung und keine ELSE-Klausel gibt, ist das Ergebnis Undefined.

Für CASE-Anweisungen ist mindestens eine WHEN-Klausel erforderlich. Eine ELSE-Klausel ist optional.

Beispielsweise:

Eingehende Nutzlast veröffentlicht für Topic topic/subtopic:

{ "color":"yellow" }

SQL-Anweisung:

SELECT CASE color WHEN 'green' THEN 'go' WHEN 'yellow' THEN 'caution' WHEN 'red' THEN 'stop' ELSE 'you are not at a stop light' END as instructions FROM 'topic/subtopic'

Die resultierende Ausgabenutzlast ist:

{ "instructions":"caution" }
Anmerkung

Wenn v Undefined ist, ist das Ergebnis der Case-Anweisung Undefined.