我希望搜索至少匹配两个关键字的文档,使用这样的术语查询:
{
"query": {
"terms": {
"title": ["java","编程","思想"],
"minimum_match": 2
}
},
"highlight": {
"fields": {
"title": {}
}
}
}它返回“术语查询不支持minimum_match”。我的查询有什么问题?
发布于 2016-11-28 05:34:22
正确的名称是minimum_should_match,该设置是在ES 2.0中被否决。
您可以做的是将bool/should查询与三个term查询一起使用,并为bool/should查询使用minimum_should_match设置:
{
"query": {
"bool": {
"minimum_should_match": 2,
"should": [
{
"term": {
"title": "java"
}
},
{
"term": {
"title": "编程"
}
},
{
"term": {
"title": "思想"
}
}
]
}
},
"highlight": {
"fields": {
"title": {}
}
}
}https://stackoverflow.com/questions/40837678
复制相似问题