WHERE-Klausel - 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.

WHERE-Klausel

Die WHERE-Klausel bestimmt, ob die durch eine Regel angegeben Aktionen ausgeführt werden. Wenn die WHERE-Klausel wahr ist, werden die Regelaktionen ausgeführt. Andernfalls werden die Regelaktionen nicht ausgeführt.

Die WHERE-Klausel unterstützt Datentypen, Operatoren, Funktionen, Literale, Case-Anweisungen, JSON-Erweiterungen, Ersetzungsvorlagen und Verschachtelte Objektabfragen.

Beispiel:

Eingehende Nutzlast veröffentlicht für topic/subtopic: {"color":"red", "temperature":40}

SQL: SELECT color AS my_color FROM 'topic/subtopic' WHERE temperature > 50 AND color <> 'red'.

In diesem Fall wird die Regel ausgelöst. Die durch die Regel angegebenen Aktionen werden jedoch nicht ausgeführt. Es gibt keine ausgehende Nutzlast.

In der WHERE-Klausel können Sie Funktionen und Operatoren verwenden. Sie können jedoch nicht auf Aliase verweisen, die in SELECT mit dem Schlüsselwort AS erstellt wurden. Die WHERE-Klausel wird zuerst ausgewertet, um zu bestimmen, ob SELECT ausgewertet wurde.

Beispiel mit Nicht-JSON-Nutzdaten:

Eingehende Nicht-JSON-Nutzdaten, veröffentlicht unter `topic/subtopic`: `80`

SQL: `SELECT decode(encode(*, 'base64'), 'base64') AS value FROM 'topic/subtopic' WHERE decode(encode(*, 'base64'), 'base64') > 50

In diesem Fall wird die Regel ausgelöst und durch die Regel angegebene Aktionen werden ausgeführt. Die ausgehende Nutzlast wird durch die SELECT-Klausel in eine JSON-Nutzlast umgewandelt. {"value":80}