使用ES 6.5时,我可以执行bool
或random_score
,但不能同时执行。这是这些潜在查询之一:
{
"from": 0,
"size": 50,
"query": {
"function_score": {
"random_score": {
"seed": 10,
"field": "_seq_no"
}
},
"bool": {
"filter": [
{
"terms": {
"primary_category": [
"foobar"
]
}
},
{
"terms": {
"primary_type": [
"barbaz"
]
}
}
]
}
}
}
如果我要删除function_score
块或bool
块,则该查询有效,但结合起来,却不能:
[function_score] malformed query, expected [END_OBJECT] but found [FIELD_NAME]
我想做的就是以一种可预测的方式对结果进行“随机排序”,这将在分页等过程中起作用。实际上,我只是试图以高方差显示过滤后的结果,因为任何类型的标准排序都会创建模式结果我想避免。
任何帮助将不胜感激,我将继续努力。
答案 0 :(得分:0)
我知道了。 function_score
应该是bool
块的一部分。