Operadores lógicos (binarios)

Los operadores lógicos siguientes se pueden usar para realizar comparaciones y evaluaciones:

Nombre del operador Sintaxis Significado
Igualdad == Devuelve true si ambos operandos son no NULL y son iguales entre sí. De lo contrario, devuelve false.
Desigualdad != Devuelve true si alguno de los operandos es NULL o si los operandos no son iguales entre sí. De lo contrario, devuelve false.
Y lógico and Devuelve true solo si ambos operandos son true.
OR lógico or Devuelve true si alguno de los operandos es true, independientemente del otro operando.

Nota

Estos operadores lógicos se conocen a veces como operadores booleanos y, a veces, como operadores binarios. Los términos son intercambiables.

Funcionamiento de los operadores lógicos con valores NULL

Los valores NULL cumplen las reglas siguientes:

Operación Resultado
bool(null) == bool(null) false
bool(null) != bool(null) false
bool(null) and true false
bool(null) or true true

Ejemplos

Igualdad

La consulta siguiente devuelve un recuento de todos los eventos de tormenta en los que el tipo de evento es "Tornado".

StormEvents
| where EventType == "Tornado"
| count

Salida

Count
1238

Desigualdad

La consulta siguiente devuelve un recuento de todos los eventos de tormenta en los que el tipo de evento no es "Tornado".

StormEvents
| where EventType != "Tornado"
| count

Salida

Count
57828

Y lógico

La consulta siguiente devuelve un recuento de todos los eventos de tormenta en los que el tipo de evento es "Tornado" y el estado es "KANSAS".

StormEvents
| where EventType == "Tornado" and State == "KANSAS"
| count

Salida

Count
161

OR lógico

La consulta siguiente devuelve un recuento de todos los eventos de tormenta en los que el tipo de evento es "Tornado" o "Thunderstorm Wind".

StormEvents
| where EventType == "Tornado" or EventType != "Thunderstorm Wind"
| count

Salida

Count
14253

Valores NULL

En la consulta siguiente se muestra que los valores NULL se tratan como false.

print iff(bool(null) and true, true, false)

Salida

print_0
false