在我的Elasticsearch索引中,我有类似这样的类型:
a: {value:'xx cc',type:'city'}
b: {value:'xx dd',type:'school'}
c: {value:'xx',type:'school'}...
当我搜索value='xx'
时,我希望' city
'可以先显示,而不是school
',我该如何实现?
答案 0 :(得分:0)
最简单的方法是使用布尔查询:
GET /_search
{
"query": {
"bool": {
"must": {
"match": {
"value": {
"query": "xx",
"operator": "and"
}
}
},
"should": [
{ "match": { "type": "city" }}
]
}
}
}
更多的条款与文档匹配,最相关的条款。结果与城市'因此会有更好的分数。