我想在我的查询的函数块内的Match内再添加一个字段,但添加时出现错误-“原因”:“[Match]查询不支持多个字段,Found[Gender]和[id]”,
我该怎么做呢?
GET exp/_search
{
"_source": ["score","answer","gender","id"]
, "query": {
"function_score": {
"query": {
"match": {
"score": 10
}
},
"functions": [
{
"filter": {
"match":{
"gender":"male",
"id":1
}
},
"weight": 2
}
]
}
}
}
1条答案
按热度按时间ff29svar1#
您可以在
filter
中创建bool
查询,它将解决您的问题。match
查询不支持提供%2个不同的字段和值。您可以使用bool
查询来实现相同的目的。此外,如果要为
gender
和id
应用两个不同升压值,则可以提供两个Filter子句,如下所示: