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 AWS IoT SQL
En AWS IoT, las reglas se definen mediante una sintaxis SQL similar. SQLlas declaraciones se componen de tres tipos de cláusulas:
- SELECT
-
(Obligatorio) Extrae información de la carga de un mensaje de entrada y realiza transformaciones en la información. Los mensajes que se van a utilizar se identifican mediante el filtro de temas especificado en la FROM cláusula.
La SELECT cláusula admite Tipos de datosOperadores,Funciones,Literales,Instrucciones case, Extensiones de JSONPlantillas de sustitución,Consultas de objetos anidados, yCargas binarias.
- FROM
-
El filtro de temas de MQTT mensajes que identifica los mensajes de los que se van a extraer datos. La regla se activa para cada mensaje enviado a un MQTT tema que coincida 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 WHERE cláusula admite Tipos de datosOperadores,Funciones,Literales, Instrucciones caseExtensiones de JSON,Plantillas de sustitución, yConsultas de objetos anidados.
Un ejemplo de SQL declaración se ve así:
SELECT color AS rgb FROM 'topic/subtopic' WHERE temperature > 50
Un MQTT mensaje de ejemplo (también denominado carga útil entrante) tiene el siguiente aspecto:
{ "color":"red", "temperature":100 }
Si este mensaje se publica sobre el 'topic/subtopic'
tema, se activa la regla y se evalúa la SQL sentencia. La SQL declaración extrae el valor de la color
propiedad si la "temperature"
propiedad es mayor que 50. La WHERE cláusula especifica la condicióntemperature > 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 AWS IoT acciones de reglas.
nota
Actualmente, la AWS IoT SQL sintaxis no admite comentarios.
Los nombres de atributos con espacios no se pueden usar como nombres de campo en la SQL declaración. Si bien la carga útil entrante puede tener nombres de atributos con espacios, dichos nombres no se pueden usar en la SQL declaración. Sin embargo, se transferirán a la carga saliente si utiliza una especificación de nombre de campo comodín (*).