gpt4 book ai didi

java - Elasticsearch 2+ JAVA API 或过滤器

转载 作者:行者123 更新时间:2023-11-30 02:37:20 26 4
gpt4 key购买 nike

我正在尝试编写一些 Java 代码来查询 ES5 实例。在 ES1 中,您可以使用 OR 和 AND 过滤器、orFilter 和 andFilter。 ES5 中的等价物是什么?我已经尝试过 -

QueryBuilder fb1 = QueryBuilders.termQuery("term1", "value1");
QueryBuilder fb2 = QueryBuilders.termQuery("term1", "value2");
QueryBuilder fb3 = QueryBuilders.termQuery("term2", "value3");

QueryBuilder fb = QueryBuilders.boolQuery()
.must(fb1)
.should(fb2)

This gives results that match fb1, so this is not an OR

QueryBuilder fb = QueryBuilders.boolQuery()
.must(fb1)
.must(fb2)

This gives no results, so the AND worked.

我想找出构建 AND、OR 查询的方法

最佳答案

为了进行 AND 查询,请将所有条件放入“must”。

QueryBuilder fb = QueryBuilders.boolQuery().must(fb1).must(fb2);

为了进行 OR 查询,请将所有条件放入“should”中。

QueryBuilder fb = QueryBuilders.boolQuery().should(fb1).should(fb2);

关于java - Elasticsearch 2+ JAVA API 或过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42706487/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com