Should(Or)子句是可选的
从引用此文章。“在查询中,如果存在必须查询和过滤器查询,则应查询应该会影响分数。但是,如果布尔查询处于过滤器上下文中,或者既没有必须查询也没有过滤器查询,则至少应有一个查询查询必须与文档匹配。”
因此,在您的查询中,应该只影响得分,而不实际过滤文档。您必须将must包装在must中,或将其移动到过滤器中(如果不需要评分)。
GET employeeindex/_search{ "query": { "bool": { "filter": { "range": { "projectdate": { "gte": "2019-01-01" } } }, "must": [ { "bool": { "should": [ { "term": { "email.raw": "abc@text.com" } }, { "term": { "email.raw": "efg@text.com" } } ] } } ] } }}您也可以使用@AlwaysSunny的答案中的条款子句替换should子句。



