Elasticsearch:哪种类型更相关?助推?映射还是?

Elasticsearch : which type has more relevancy? Boosting? Mapping or?

在我的 Elasticsearch 索引中,我有这样的类型:

a: {value:'xx cc',type:'city'}
b: {value:'xx dd',type:'school'}
c: {value:'xx',type:'school'}...

当我搜索value='xx'时,我希望先显示'city',而不是'school',我该如何实现?

最简单的方法是使用布尔查询:

GET /_search
{
    "query": {
        "bool": {
            "must": {
                "match": {
                    "value": { 
                        "query":    "xx",
                        "operator": "and"
                    }
                }
            },
            "should": [ 
                { "match": { "type": "city" }}
            ]
        }
    }
}

与文档匹配的子句越多,相关性就越高。 'city' 的结果将因此获得更好的分数。