我需要应用一个“OR”过滤器,它相当于('a' or 'b' or 'c' or 'd' or 'e')中的类别,下面提供了一个等效的 ES 查询
"query_string": {
"query": "category: (\"a\", \"b\", \"c\", \"d\", \"e\")"
}
我有下面提到的 JAVA ES API 代码,我对在 Java 中添加 OR 过滤器感到震惊。有人可以帮忙吗?
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder()
searchSourceBuilder.query(QueryBuilders.boolQuery()
.must(QueryBuilders.filteredQuery(QueryBuilders.matchAllQuery(),
FilterBuilders.termFilter("category","a")))
.must(QueryBuilders.rangeQuery("@timestamp").from(fromHr).to(toHr)))
.fields(fieldList);