如果我想返回包含术语beetlejuice
的所有文档,我可以使用像
{
"bool":{
"should":[
{
"term":{
"description":"beetlejuice"
}
}
]
}
}
目前尚不清楚如何将描述字段中包含字符串beetlejuice
的所有文档至少返回3次。我看到minimum_should_match
,但我认为这将用于bool中的单独查询。当文档的描述字段中出现一个单词至少N次时,如何设置查询以匹配?
答案 0 :(得分:0)
您可以使用scripting来达到您想要的效果。
基本上,您需要的只是文档字段中所需术语的term frequency,您可以使用脚本访问该值。
_index['FIELD']['TERM'].tf()
示例过滤器脚本:
"filter" : {
"script" : {
"script" : "_index['description']['beetlejuice'].tf() > N",
"params" : {
"N" : 2
}
}
}