Поделиться через


Логические (двоичные) операторы

Применимо: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel

Для сравнения и оценки можно использовать следующие логические операторы:

Имя оператора Синтаксис Значение
Равенство == Возвращает true, если оба операнда не равны null и равны друг другу. В противном случае возвращается false.
Неравенство != Возвращает true, если любой из операндов имеет значение NULL или если операнды не равны друг другу. В противном случае возвращается false.
Логические и and Возвращает true только в том случае, если оба операнда true. Логический and имеет более высокий приоритет, чем логический or.
Логические или or Возвращает true, если один из операндов trueнезависимо от другого операнда.

Заметка

Эти логические операторы иногда называют логическими операторами, а иногда и двоичными операторами. Термины взаимозаменяемы.

Как логические операторы работают со значениями NULL

Значения NULL соответствуют следующим правилам:

Операция Результат
bool(null) == bool(null) false
bool(null) != bool(null) false
bool(null) and true false
bool(null) or true true

Примеры

Равенство

Следующий запрос возвращает количество всех событий storm, в которых тип события — Tornado.

StormEvents
| where EventType == "Tornado"
| count

выходных

Считать
1238

Неравенство

Следующий запрос возвращает количество всех событий storm, в которых тип события не является Tornado.

StormEvents
| where EventType != "Tornado"
| count

выходных

Считать
57828

Логические и

Следующий запрос возвращает количество всех событий storm, в которых тип события — Tornado, а состояние — "КАНЗАС".

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

выходных

Считать
161

Логические или

Следующий запрос возвращает количество всех событий шторма, в которых тип события — Tornado или Thunder storm Wind.

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

выходных

Считать
14253

Значения NULL

В следующем запросе показано, что значения NULL обрабатываются как false.

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

выходных

печатать
ложный