Условие сравнения массива Watcher
Используйте array_compare для сравнения массива значений в контексте выполнения с заданным значением. См. Таблицу 77, «Поддерживаемые операторы сравнения» для операторов, которые можно использовать.
Использование условия сравнения массива
Для использования условия 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/7.17/condition-array-compare.html