本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
SQL 版本
AWS IoT 規則引擎使用類似 SQL 的語法從 MQTT 訊息中選取資料。SQL 陳述式會以指定的 SQL 版本來解釋,版本由描述規則的 JSON 文件的 awsIotSqlVersion
屬性指定。如需更多關於 JSON 規則文件結構的資訊,請參閱建立規則的相關文章。此awsIotSqlVersion
屬性可讓您指定要使用的 AWS IoT SQL 規則引擎版本。部署新版本時,可以繼續使用較早版本,或變更規則以使用新版本。目前的規則會繼續使用建立時使用的版本。
下列 JSON 範例顯示了如何使用 awsIotSqlVersion
屬性來指定 SQL 版本。
{ "sql": "expression", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [{ "republish": { "topic": "my-mqtt-topic", "roleArn": "arn:aws:iam::123456789012:role/my-iot-role" } }] }
AWS IoT 目前支援下列 SQL 版本:
-
2016-03-23
:建立於 2016 年 3 月 23 日的 SQL 版本(推薦)。 -
2015-10-08
:建立於 2015 年 10 月 8 日的原始 SQL 版本。 -
beta
:最新的 SQL 版本。此版本可能導致規則受到中段變更。
2016 年 3 月 23 日 SQL 規則引擎版本的新功能
輸出一個 Array
作為最上層物件
此功能可讓規則將陣列作為最上層物件傳回。舉例而言,若為以下的 MQTT 訊息:
{ "a": {"b":"c"}, "arr":[1,2,3,4] }
此外以下規則:
SELECT VALUE arr FROM 'topic'
該規則會產生以下輸出。
[1,2,3,4]