在我的应用程序中,我发出多个查询,每个查询到不同的索引。然后,我合并这些查询的结果,并使用_score
属性对它们进行排序,以便根据它们的相关性对它们进行排序。但我想知道这是否有意义,因为结果来自不同的查询?
我想我的问题是:可以对来自不同查询的_score
进行比较吗?
答案 0 :(得分:2)
不是发出多个查询,而是在一个查询中将它们聚集在一起是个好主意。 您可以使用索引查询来执行索引specefic操作。
类似
{
"bool": {
"should": [
{
"indices": {
"indices": [
"index1"
],
"query": {
"term": {
"tag": "wow"
}
}
}
},
{
"indices": {
"indices": [
"index2"
],
"query": {
"term": {
"name": "laptop"
}
}
}
}
]
}
}
完成此操作后,将根据_score对结果进行排序。 希望有所帮助。