javaApi的elasticsearch查询,过滤出等于[3,4,5]的source字段值
时间: 2024-02-28 22:57:42 浏览: 152
您可以使用terms查询来实现这个要求。具体的查询DSL如下:
```
{
"query": {
"terms": {
"_source": [
"3",
"4",
"5"
],
"boost": 1.0
}
}
}
```
在Java API中,您可以使用以下代码实现:
```java
SearchRequest searchRequest = new SearchRequest("your_index");
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
TermsQueryBuilder termsQueryBuilder = QueryBuilders.termsQuery("_source", "3", "4", "5");
searchSourceBuilder.query(termsQueryBuilder);
searchRequest.source(searchSourceBuilder);
SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
```
其中,client是您的Elasticsearch客户端对象。请注意,terms查询默认情况下是不会被分析器分析的,所以如果您的字段是分词的,那么您需要在查询时手动指定分析器。
相关问题
javaApi的elasticsearch查询,过滤掉不等于[3,4,5]的source字段值
您可以使用terms查询和must_not过滤器来实现这个要求。具体的查询DSL如下:
```
{
"query": {
"bool": {
"must_not": [
{
"terms": {
"_source": [
"3",
"4",
"5"
],
"boost": 1.0
}
}
]
}
}
}
```
在Java API中,您可以使用以下代码实现:
```java
SearchRequest searchRequest = new SearchRequest("your_index");
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
TermsQueryBuilder termsQueryBuilder = QueryBuilders.termsQuery("_source", "3", "4", "5");
boolQueryBuilder.mustNot(termsQueryBuilder);
searchSourceBuilder.query(boolQueryBuilder);
searchRequest.source(searchSourceBuilder);
SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
```
其中,client是您的Elasticsearch客户端对象。请注意,terms查询默认情况下是不会被分析器分析的,所以如果您的字段是分词的,那么您需要在查询时手动指定分析器。
javaApi的elasticsearch查询,过滤掉source字段不等于3,4,5的
您可以使用bool查询和must_not过滤器来实现这个要求。具体的查询DSL如下:
```
{
"query": {
"bool": {
"must_not": [
{
"terms": {
"_source": [
"3",
"4",
"5"
]
}
}
]
}
}
}
```
在Java API中,您可以使用以下代码实现:
```java
SearchRequest searchRequest = new SearchRequest("your_index");
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
TermsQueryBuilder termsQueryBuilder = QueryBuilders.termsQuery("_source", "3", "4", "5");
boolQueryBuilder.mustNot(termsQueryBuilder);
searchSourceBuilder.query(boolQueryBuilder);
searchRequest.source(searchSourceBuilder);
SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
```
其中,client是您的Elasticsearch客户端对象。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044901.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![docx](https://img-home.csdnimg.cn/images/20241231044901.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)