Оператор has_all
Область применения: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Фильтрует набор записей для данных с одной или несколькими строками поиска без учета регистра. has_all
ищет индексированные термины, где индексированные термины — три или более символов. Если ваш термин меньше трех символов, запрос сканирует значения в столбце, что медленнее, чем поиск термина в индексе термина.
Дополнительные сведения о других операторах и определении наиболее подходящих операторов для запроса см. в разделе строковых операторов типа данных.
Синтаксис
T |
where
col (
has_all
expression ...,
)
Дополнительные сведения о соглашениях синтаксиса.
Параметры
Имя (название) | Type | Обязательно | Описание |
---|---|---|---|
T | string |
✔️ | Табличные входные данные для фильтрации. |
col | string |
✔️ | Столбец, по которому необходимо отфильтровать. |
выражение | скалярный или табличный | ✔️ | Выражение, указывающее значения, для которых выполняется поиск. Каждое выражение может быть скалярным значением или табличным выражением , которое создает набор значений. Если табличное выражение содержит несколько столбцов, используется первый столбец. Поиск будет рассматривать до 256 различных значений. |
Возвраты
Строки в T, для которых предикат имеет значение true
.
Примеры
Набор скалярных
В следующем запросе показано, как использовать has_all
с разделенным запятыми набор скалярных значений.
StormEvents
| where EpisodeNarrative has_all ("cold", "strong", "afternoon", "hail")
| summarize Count=count() by EventType
| top 3 by Count
Выходные данные
EventType | Count |
---|---|
Ураганный ветер | 517 |
Град | 392 |
Паводок | 24 |
Динамический массив
Такой же результат можно достичь с помощью нотации динамического массива.
StormEvents
| where EpisodeNarrative has_all (dynamic(["cold", "strong", "afternoon", "hail"]))
| summarize Count=count() by EventType
| top 3 by Count
Выходные данные
EventType | Count |
---|---|
Ураганный ветер | 517 |
Град | 392 |
Паводок | 24 |
Тот же запрос также можно записать с помощью инструкции let.
let criteria = dynamic(["cold", "strong", "afternoon", "hail"]);
StormEvents
| where EpisodeNarrative has_all (criteria)
| summarize Count=count() by EventType
| top 3 by Count
EventType | Count |
---|---|
Ураганный ветер | 517 |
Град | 392 |
Паводок | 24 |