Elasticsearch 查詢in 和 not in 的實現方式
最近用到ES查詢,因用的是Java寫的,需要實現一個需求: 過濾一部分id, 查詢時不需要查出來。
既然需要不包含,那麼首先需要實現包含的方式(精確完全匹配),這裡我們要用到的是termQuery
首先看下ES Bool聯合查詢的屬性:
bool聯合查詢: must,should,must_not
聯合查詢就會使用到must,should,must_not三種關鍵詞。
這三個可以這麼理解
- must: 文件必須完全匹配條件
- should: should下面會帶一個以上的條件,至少滿足一個條件,這個文件就符合should
- must_not: 文件必須不匹配條件
具體案例,我需要過濾掉不用的exerciseId:
BoolQueryBuilder exersiceBoolQuery = QueryBuilders.boolQuery();
if (exersiceIds != null && exersiceIds.size() > 0)
{
for (String exerciseId: exersiceIds)
{
exersiceBoolQuery.mustNot(QueryBuilders.termQuery("id", exerciseId));
}
}
最後在傳送請求的時候,加上你的exersiceBoolQuery 即可
相關文章
- Elasticsearch中的Term查詢和全文查詢Elasticsearch
- elasticsearch 查詢(match和term)Elasticsearch
- ElasticSearch類似Mysql的not in 和 in 查詢ElasticsearchMySql
- 利用CGI方式實現Web查詢 (轉)Web
- java實現Hbase中的查詢(一)Filter方式JavaFilter
- Elasticsearch查詢Elasticsearch
- ElasticSearch的查詢(二)Elasticsearch
- elasticsearch的模糊查詢Elasticsearch
- ElasticSearch - 分頁查詢方式二 【scroll】滾動查詢(kibana、Java示例)ElasticsearchJava
- SSH:hiberate實現資料的查詢(單查詢和全查詢)
- ElasticSearch DSL 查詢Elasticsearch
- Elasticsearch 高亮查詢Elasticsearch
- SSH整合實現分頁查詢(兩種方式)
- Access查詢實現Mysql的 limit 查詢MySqlMIT
- Elasticsearch複合查詢——boosting查詢Elasticsearch
- elasticsearch之多索引查詢Elasticsearch索引
- Elasticsearch 分頁查詢Elasticsearch
- Elasticsearch 或並查詢Elasticsearch
- Elasticsearch(三):索引查詢Elasticsearch索引
- elasticsearch之exists查詢Elasticsearch
- ElasticSearch中的簡單查詢Elasticsearch
- 實踐006-elasticsearch查詢之1-URI Search查詢Elasticsearch
- Java中Elasticsearch 實現分頁方式(三種方式)JavaElasticsearch
- 微信域名批次檢測 微信域名攔截查詢的實現方式
- Elasticsearch——定位不合法的查詢Elasticsearch
- elasticsearch查詢之大資料集分頁查詢Elasticsearch大資料
- Elasticsearch系列---聚合查詢(一)Elasticsearch
- Elasticsearch系列---聚合查詢原理Elasticsearch
- Elasticsearch——filter過濾查詢ElasticsearchFilter
- Elasticsearch 查詢與過濾Elasticsearch
- 實踐007-elasticsearch查詢之2-Request Body與DSL查詢Elasticsearch
- Elasticsearch 複合查詢——多字串多欄位查詢Elasticsearch字串
- Elasticsearch 並或查詢 JSONElasticsearchJSON
- Elasticsearch Query DSL查詢入門Elasticsearch
- Elasticsearch查詢語句語法Elasticsearch
- 將聚合新增到 Elasticsearch 查詢Elasticsearch
- elasticSearch head 查詢報錯Elasticsearch
- 實現 MyBatis 流式查詢的方法MyBatis