Условие сравнения массива Watcher
Используйте array_compare для сравнения массива значений в контексте выполнения с заданным значением. См. Таблицу 84 для доступных операторов.
Использование условия сравнения массива
Чтобы использовать условие array_compare, укажите массив в контексте выполнения, который требуется оценить, оператор сравнения и значение, с которым нужно сравнить. Необязательно, можно указать путь к полю в каждом элементе массива, который нужно оценить.
Например, следующее условие array_compare возвращает true, если в агрегации есть хотя бы один бакет, у которого doc_count больше или равно 25:
{
"condition": {
"array_compare": {
"ctx.payload.aggregations.top_tweeters.buckets" : {
"path": "doc_count",
"gte": {
"value": 25
}
}
}
}
} | Путь к массиву в контексте выполнения, который нужно оценить, указанный в точечной нотации. | |
| Путь к полю в каждом элементе массива, который нужно оценить. | |
| Оператор сравнения для использования. | |
| Значение для сравнения. Поддерживает математику дат, как и условие сравнения. |
При использовании имён полей, содержащих точку, это условие не будет работать, используйте условие скрипта вместо этого.
Атрибуты условия сравнения массива
| Имя | Описание |
|---|---|
| Путь к массиву в контексте выполнения, указанный в точечной нотации. Например, |
| Путь к полю в каждом элементе массива, который нужно оценить. Например, |
| Сколько совпадений требуется для оценки сравнения как |
| Значение для сравнения. |
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/condition-array-compare.html