@jaren
Для вычисления разницы между двумя полями в Elasticsearch можно использовать функцию скрипта.
Вот пример запроса на Elasticsearch, который показывает, как вычислить разницу между двумя числовыми полями "field1" и "field2" для всех документов в индексе "my_index":
1 2 3 4 5 6 7 8 9 10 11 |
GET my_index/_search { "query": { "match_all": {} }, "script_fields": { "my_diff": { "script": "doc['field1'].value - doc['field2'].value" } } } |
В этом запросе мы используем функцию скрипта для вычисления разницы между значениями "field1" и "field2" для каждого документа в индексе. Результат вычисления будет возвращен в новом поле "my_diff" для каждого документа.
Обратите внимание, что использование функции скрипта может снизить производительность вашего запроса, особенно если вы работаете с большими объемами данных. В таком случае рекомендуется использовать более оптимизированные методы для вычисления разницы между полями, например, с помощью индексирования значений разницы в отдельное поле во время индексации документов.