gpt4 book ai didi

elasticsearch - 搜索时如何在Elasticsearch中的字段上执行数学运算?

转载 作者:行者123 更新时间:2023-12-02 22:28:19 27 4
gpt4 key购买 nike

有什么方法可以在Elasticsearch数学运算中执行,如下面在SQL中所述的那样?如果是,执行这种搜索操作的最佳方法是什么?

select * from products where price + 50 > 20

最佳答案

使用无痛脚本查询(https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-script-query.html)这是可行的。

尝试一下:

GET /products/_search
{
"query": {
"bool" : {
"must" : {
"script" : {
"script" : {
"source": "(doc['price'].value + 50) > 20",
"lang": "painless"
}
}
}
}
}
}

像行为这样的准备好的语句可以这样完成:
GET /products/_search
{
"query": {
"bool" : {
"must" : {
"script" : {
"script" : {
"source": "(doc['price'].value + params.foo) > params.bar",
"lang": "painless",
"params" : {
"foo" : 50,
"bar" : 20
}
}
}
}
}
}
}

关于elasticsearch - 搜索时如何在Elasticsearch中的字段上执行数学运算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53222554/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com