Оператор where
Отфильтровывает таблицу для подмножества строк, которые удовлетворяют предикату.
Операторы
where
иfilter
эквивалентны
Синтаксис
T| where
Предикат
Дополнительные сведения о соглашениях о синтаксисе.
Параметры
Имя | Тип | Обязательно | Описание |
---|---|---|---|
T | string |
✔️ | Табличные входные данные, записи которых необходимо отфильтровать. |
Предикат | string |
✔️ | Выражение, результатом которого является логическое значение для каждой строки в T. |
Возвращаемое значение
Строки из таблицы T, для которых Predicate имеет значение true
.
Примечание
Все функции фильтрации возвращают значение false при сравнении со значениями NULL. Используйте специальные функции, поддерживающие значение NULL, для написания запросов, обрабатывающих значения NULL.
Советы по улучшению производительности
Используйте простые сравнения между именами столбцов и константами. (Под константой здесь понимается значение, постоянное для всех строк таблицы. Соответственно, допустимо использовать функции
now()
иago()
, а также скалярные значения, назначенные с помощью оператораlet
.)Например, лучше использовать
where Timestamp >= ago(1d)
, чемwhere bin(Timestamp, 1d) == ago(1d)
.Вводите сначала более простые элементы. Если у вас есть несколько предложений, объединенных с помощью
and
, то сначала вводите предложения, которые включают только один столбец. Пример правильного порядка предложений:Timestamp > ago(1d) and OpId == EventId
.
Дополнительные сведения см. в сводке доступных строковых операторов и в сводке доступных числовых операторов.
Примеры
Сравнение заказов по сложности
Следующий запрос возвращает записи шторма, которые сообщают о поврежденном свойстве, являются наводнениями, а также начинаются и заканчиваются в разных местах.
Обратите внимание, что мы ставим сравнение двух столбцов последним, так как оператор where не может использовать индекс и принудительно выполняет проверку.
StormEvents
| project DamageProperty, EventType, BeginLocation, EndLocation
| where DamageProperty > 0
and EventType == "Flood"
and BeginLocation != EndLocation
В следующей таблице показаны только первые 10 результатов. Чтобы просмотреть полные выходные данные, выполните запрос.
DamageProperty | EventType | BeginLocation | EndLocation |
---|---|---|---|
5000 | Наводнение | ФАЙЕТТ СИТИ ЛОУБЕР | |
5000 | Наводнение | МОРРИСВИЛЛ ЗАПАДНЫЙ УЭЙНЕСБЕРГ | |
10000 | Наводнение | КОУПЛЕНД ХАРРИС ГРОУВ | |
5000 | Наводнение | ГЛЕНФОРД МАУНТ ПЕРРИ | |
25000 | Наводнение | ВОСТОЧНАЯ СЕНЕКА БУФФАЛО AIRPARK ARPT | |
20 000 | Наводнение | EBENEZER SLOAN | |
10000 | Наводнение | БУЭЛЬ КАЛХУН | |
10000 | Наводнение | ГУДХОП УЭСТ МИЛФОРД | |
5000 | Наводнение | ЛЕС ДЮНКЕРКА | |
20 000 | Наводнение | ФАРМИНГТОН МАННИНГТОН |
Проверьте, содержит ли столбец строку
Следующий запрос возвращает строки, в которых слово cow отображается в любом столбце.
StormEvents
| where * has "cow"
См. также
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по