AWS IoT Riferimento SQL - AWS IoT Core

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWS IoT Riferimento SQL

Nel AWS IoT, le regole vengono definite utilizzando una sintassi simile a SQL. Le istruzioni SQL sono costituite da tre tipi di clausole:

SELECT

(Obbligatorio) Estrae le informazioni dal payload del messaggio in ingresso ed esegue le trasformazioni sulle informazioni. I messaggi da utilizzare sono identificati dal Filtro di argomenti specificato nella clausola FROM.

La clausola SELECT supporta Tipi di dati, Operatori, Funzioni, Valori letterali, Istruzioni case, Estensioni JSON, Modelli di sostituzione, Query di oggetti nidificati e Payload binari.

FROM

Il messaggio MQTT Filtro di argomenti che identifica i messaggi da cui estrarre i dati. La regola viene attivata per ogni messaggio inviato a un argomento MQTT che corrisponde al filtro argomento specificato qui. Obbligatorio per le regole che vengono attivate da messaggi che attraversano il broker di messaggi. Facoltativo per le regole che vengono attivate solo utilizzando la caratteristica Basic Ingest.

WHERE

(Facoltativo) Aggiunge una logica condizionale che determina se le operazioni specificate da una regola vengono eseguite.

La clausola WHERE supporta Tipi di dati, Operatori, Funzioni, Valori letterali, Istruzioni case, Estensioni JSON, Modelli di sostituzione e Query di oggetti nidificati.

Un'istruzione SQL di esempio è simile a quanto segue:

SELECT color AS rgb FROM 'topic/subtopic' WHERE temperature > 50

Un messaggio MQTT di esempio (detto anche payload in ingresso) è simile a quanto segue:

{ "color":"red", "temperature":100 }

Se questo messaggio viene pubblicato nell'argomento 'topic/subtopic', la regola viene attivata e l'istruzione SQL viene valutata. L'istruzione SQL estrae il valore della proprietà color se la proprietà "temperature" è superiore a 50. La clausola WHERE specifica la condizione temperature > 50. La parola chiave AS rinomina la proprietà "color" in "rgb". Il risultato (detto anche payload in uscita) è simile al seguente:

{ "rgb":"red" }

Questi dati vengono quindi inoltrati all'operazione della regola, che invia i dati per l'ulteriore elaborazione. Per ulteriori informazioni sulle operazioni delle regole, consulta AWS IoT azioni relative alle regole.

Nota

I commenti non sono attualmente supportati nella AWS IoT sintassi SQL.

I nomi degli attributi che contengono spazi non possono essere utilizzati come nomi di campo nell'istruzione SQL. Il payload in entrata può avere nomi di attributi contenenti spazi, ma tali nomi non possono essere utilizzati nell'istruzione SQL. Tuttavia, vengono passati al payload in uscita se utilizzi una specifica jolly (*) per il nome del campo.