easy-es 检索逗号拼接条件
时间: 2024-09-18 07:10:17 浏览: 44
使用java开发ElasticSearch Demo,整合了easy-es,并在mybatisplus的拦截器中,完成数据同步
`easy-es` 是一个基于 Elasticsearch 的 Java 客户端库,它简化了与 Elasticsearch 进行交互的操作,包括检索数据。当你需要通过逗号分隔的条件(通常是查询过滤器)来进行检索时,可以使用 `easy-es` 提供的动态查询构建功能。
例如,假设你有一个产品列表,你想找到所有价格在 100 到 500 元,并且品牌包含 "A" 或 "B" 的商品,你可以这样做:
```java
ElasticsearchClient client = EasyEsClient.createClient();
String filterQuery = "price:[100 TO 500] AND brand:\"A,B\"";
SearchRequest searchRequest = new SearchRequest("products")
.query(QueryBuilders.matchAllQuery())
.filter(FilterBuilders.queryFilter(QueryBuilders.multiMatchQuery(filterQuery, "price", "brand")));
SearchResponse response = client.search(searchRequest);
```
这里,`multiMatchQuery` 是用于处理逗号分隔条件的关键部分,它可以同时匹配多个字段。`[100 TO 500]` 表示价格范围的查询,`"A,B"` 作为字符串传递给查询,会被解析成两个单独的条件。
阅读全文