Case ステートメント - AWS IoT Core

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

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 ステートメントには少なくとも 1 つの 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 です。