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

Case 语句

Case 语句可以用于执行分支,就像 switch 语句一样。

语法:

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

评估表达式 v,并与每个 WHEN 子句的 t[i] 值进行相等匹配。如果找到匹配,相应的 r[i] 表达式会成为 CASE 语句的结果。按顺序评估 WHEN 子句,这样,如果有多个匹配子句,第一个匹配子句的结果将成为 CASE 语句的结果。如果没有匹配,ELSE 子句的 r[e] 就是结果。如果没有匹配项且没有 ELSE 子句,则结果为 Undefined

CASE 语句至少需要一个 WHEN 子句。ELSE 子句是可选的。

例如:

传入有效载荷已发布至主题 topic/subtopic

{ "color":"yellow" }

SQL 语句:

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'

生成的传出有效载荷为:

{ "instructions":"caution" }
注意

如果 vUndefined,则 Case 语句的结果为 Undefined