Referencia de la SQL de AWS IoT - AWS IoT Core

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Referencia de la SQL de AWS IoT

En AWS IoT, las reglas se definen utilizando una sintaxis similar a SQL. Las instrucciones SQL se componen de tres tipos de cláusulas:

SELECT

Obligatorio. Extrae información de la carga útil de un mensaje entrante y realiza transformaciones de la información. Los mensajes que se van a utilizar se identifican mediante elFiltro de temasespecificado en la cláusula FROM.

La cláusula SELECT admiteTipos de datos,Operadores,Funciones,Literales,Instrucciones case,Extensiones JSON,Plantillas de sustitución,Consultas de objetos anidados, yCargas binarias.

FROM

El mensaje MQTTFiltro de temasque identifica los mensajes de los que extraer datos. La regla se activa para cada mensaje enviado a un tema de MQTT que coincide con el filtro de temas especificado aquí. Obligatorio para reglas que se activan mediante mensajes que pasan por el agente de mensajes. Opcional para reglas que solo se activan mediante la característica Basic Ingest.

WHERE

(Opcional) Agrega lógica condicional que determina si se llevan a cabo las acciones especificadas por una regla.

La cláusula WHERE admite Tipos de datos, Operadores, Funciones, Literales, Instrucciones case, Extensiones JSON, Plantillas de sustitución y Consultas de objetos anidados.

Un ejemplo de instrucción SQL tiene este aspecto:

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

Un mensaje MQTT de ejemplo (también denominado carga de entrada) tiene este aspecto:

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

Si este mensaje se publica en el tema 'topic/subtopic', la regla se activa y se evalúa la instrucción SQL. La instrucción SQL extrae el valor de la propiedad color si la propiedad "temperature" es superior a 50. La cláusula WHERE especifica la condición temperature > 50. La palabra clave AS cambia el nombre de la propiedad "color" a "rgb". El resultado (también denominado carga de salida) tiene este aspecto:

{ "rgb":"red" }

Estos datos se reenvían después a la acción de la regla, que envía los datos para seguirlos procesando. Para obtener más información sobre las acciones de las reglas, consulte Acciones de reglas de AWS IoT.

nota

Actualmente, los comentarios no se admiten enAWS IoTSintaxis SQL.

Los nombres de atributos con espacios en ellos no se pueden utilizar como nombres de campo en la instrucción SQL. Aunque la carga útil entrante puede tener nombres de atributos con espacios en ellos, estos nombres no se pueden utilizar en la instrucción SQL. Sin embargo, se pasarán a la carga útil saliente si utiliza una especificación de nombre de campo comodín (*).