我有许多文档包含一个rate
属性,该属性是一个包含可接受率的最小/最大范围的数组。
{ "rate": [250, 700] }
我现在想执行提供另一个范围的查询,例如:
{
"bool": {
"must": [
"range": {
"rate": { "from": 100, "to": 500 }
}
]
}
}
这工作正常,并且总是返回具有至少一个在我想要的范围内提供的值的值。
但是,对于所有结果,分数是相同的。值是否与文档上的值相同或者它只是达到几个数字的范围都没有关系。如下所示:
{
"_id": "one",
"_score": 1",
"_source": { "rate": [250,750] }
},
{
"_id": "two",
"_score": 1",
"_source": { "rate": [200,350] }
},
{
"_id": "three",
"_score": 1",
"_source": { "rate": [500,750] }
}
有没有办法改善范围搜索提供另一个这样的范围?