WHERE 子句 - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

WHERE 子句

WHERE 子句可确定是否执行规则指定的操作。如果 WHERE 子句的计算结果为 true,则执行规则操作。否则,不执行规则操作。

WHERE 子句支持 数据类型运算符函数文本Case 语句JSON 扩展替换模板嵌套对象查询

示例

传入负载已发布至 topic/subtopic{"color":"red", "temperature":40}

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

在这种情况下,规则将被触发,但不会执行规则所指定的操作。没有传出的负载。

您可以在 WHERE 子句中使用函数和运算符。但是,您无法引用在 SELECT 中通过 AS 关键字创建的任何别名。首先评估 WHERE 语句,以确定是否评估 SELECT。

带非 JSON 负载的示例:

传入的非 JSON 负载,发布位置:“topic/subtopic”:“80”

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

在这种情况下,规则将被触发,并且将执行规则所指定的操作。传出的负载将由 SELECT 子句转换为 JSON 负载 {"value":80}