相关文章推荐
爱吹牛的镜子  ·  步非烟工作室 - 百度·  1 年前    · 
心软的铁板烧  ·  拼多多:新晋PUA之王?_创事记_新浪科技_新浪网·  1 年前    · 
逼格高的碗  ·  西行纪为什么没有孙悟空_头条·  2 年前    · 
玩命的海豚  ·  2023 Ram 1500 ...·  2 年前    · 
痛苦的筷子  ·  URL链接采集、提取网页文章URL链接再批量 ...·  2 年前    · 
Code  ›  Elasticsearch 查询in 和 not in 的实现方式开发者社区
elasticsearch
https://cloud.tencent.com/developer/article/1764694
精明的菠菜
2 年前
作者头像
执笔记忆的空白
0 篇文章

Elasticsearch 查询in 和 not in 的实现方式

前往专栏
腾讯云
开发者社区
文档 意见反馈 控制台
首页
学习
活动
专区
工具
TVP
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
社区首页 > 专栏 > Java日常 > 正文

Elasticsearch 查询in 和 not in 的实现方式

发布 于 2020-12-24 09:59:45
3.5K 0
举报

最近用到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)
 
推荐文章
爱吹牛的镜子  ·  步非烟工作室 - 百度
1 年前
心软的铁板烧  ·  拼多多:新晋PUA之王?_创事记_新浪科技_新浪网
1 年前
逼格高的碗  ·  西行纪为什么没有孙悟空_头条
2 年前
玩命的海豚  ·  2023 Ram 1500 获得奢华的新装饰和杀虫手套箱_搜狐汽车_搜狐网
2 年前
痛苦的筷子  ·  URL链接采集、提取网页文章URL链接再批量查询收录 - 知乎
2 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号