Utilice funciones condicionales en las expresiones de fórmula - AWS IoT SiteWise

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.

Utilice funciones condicionales en las expresiones de fórmula

En las transformaciones y las métricas, puede usar la siguiente función para comprobar una condición y obtener resultados diferentes, independientemente de si la condición se evalúa como verdadera o falsa.

Función Descripción

if(condition, result_if_true, result_if_false)

Evalúa la condition y devuelve result_if_true si la condición se evalúa como verdadera o result_if_false si la condición se evalúa como false.

condition debe ser un número. Esta función considera 0 una cadena vacía como false y todo lo demás (incluido NaN) como true. Los valores booleanos se convierten en 0 (falso) y 1 (verdadero).

Se puede devolver la constante none de esta función para descartar el resultado de una condición concreta. Esto significa que puede filtrar los puntos de datos que no cumplan una condición. Para obtener más información, consulte Filtrar puntos de datos.

ejemplo Ejemplos
  • if(0, x, y) devuelve la variable y.

  • if(5, x, y) devuelve la variable x.

  • if(gt(temp, 300), x, y) devuelve la variable x si la variable temp es mayor que 300.

  • if(gt(temp, 300), temp, none) devuelve la variable temp si es mayor o igual que 300, o none (sin valor) si temp es menor que 300.

Se recomienda utilizarla UFCS para funciones condicionales anidadas en las que uno o más argumentos sean funciones condicionales. Se puede utilizar if(condition, result_if_true) para evaluar una condición y elif(condition, result_if_true, result_if_false) para evaluar condiciones adicionales.

Por ejemplo, en lugar de utilizar if(condition1, result1_if_true).elif(condition2, result2_if_true, result2_if_false), puede utilizar if(condition1, result1_if_true, if(condition2, result2_if_true, result2_if_false)).

También puede encadenar funciones condicionales intermedias adicionales. Por ejemplo, puede utilizar if(condition1, result1_if_true).elif(condition2, result2_if_true).elif(condition3, result3_if_true, result3_if_false) en lugar de anidar varias instrucciones if, como if(condition1, result1_if_true, if(condition2, result2_if_true, if(condition3, result3_if_true result3_if_false))).

importante

Debe usarse elif(condition, result_if_true, result_if_false) conUFCS.