ES的嵌套查询和嵌套聚合

2023-11-08

1.想要实现嵌套查询和嵌套聚合,首先需要在索引里面设置某个属性是嵌套类型(一般是List)-----type=nested

2.API的demo-嵌套查询---(使用场景:需要根据list中的两个字段以and的关系进行查询)

// 构造布尔查询
        BoolQueryBuilder boolQueryBuilder = new BoolQueryBuilder();
        boolQueryBuilder.filter(QueryBuilders.termQuery("holdAgentList.agentId", agentId));

        // 
        QueryBuilder nestedQuery = QueryBuilders.nestedQuery("holdAgentList",
            QueryBuilders.boolQuery().filter(QueryBuilders.termQuery("holdAgentList.agentId", agentId))
                .filter(QueryBuilders.termQuery("holdAgentList.isPromiseGuide", 0)), ScoreMode.None);

        boolQueryBuilder.filter(QueryBuilders.boolQuery().filter(nestedQuery))
            .filter(QueryBuilders.termQuery("onOffStatus", 3));


        // 构建查询参数
        SearchSourceBuilder sourceBuilder = new SearchSourceBuilder()
            .query(boolQueryBuilder)
            .from(0)
            .size(0);
       

3.嵌套聚合中,以list中的多字段用and的方式进行聚合----暂无解决方案

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ES的嵌套查询和嵌套聚合 的相关文章

随机推荐

  • C++基础语法1 break continue floor ceil 简析

    break 用于中断本层的整个循环 continue 用于中断本次循环 并不中断整个循环 而是继续下次循环 for x 0 x lt TEMPLATE X SIZE x for y 0 y lt TEMPLATE Y SIZE y sum
  • Java 中常用的转义字符

    博主前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住也分享一下给大家 点击跳转到网站 Java中常用的转义字符 看如下代码 public class ChangeChar public static void main S
  • Ubuntu装系统后重启卡死解决办法(超详细)

    笔者为了装这个Ubuntu可走了不少弯路 想必当你看到我这篇博客时你一定遇到了如下诸多问题的诸多个 笔者全部遇到了 1 Ubuntu装都装不了 第一步加载lougou下面有几个点 红了几个就停下了 从此一直如此 迫不得已强制关机 2 惊险度
  • 你要允许来自未知发布者的此应用对你的设备进行更改吗_物联网改变移动应用开发的4种方式...

    来源 物联之家网 iothome com 转载请注明来源 物联网改变了移动应用程序的开发格局 那么 为物联网开发移动应用程序有何不同 物联网与移动应用程序开发齐头并进 物联网改变了人类与机器的互动方式 甚至改变了机器之间的互动方式 而移动应
  • 【微分方程】微分算子法求微分方程特解

    文章目录 微分算子法 D 求特解 概述 f x f x f x 为
  • MMDetection自定义双主干Transformer模型(一)

    目录 1 添加自定义的主干网络 2 导入写好的主干网络 3 写配置文件来进行实验 基于自己的毕设想法 今天开始研究如何使用MMDetection构建自己的模型 今天的想法是构建如下的双主干网络 主干网络采用Swin Transformer
  • SQL注入类型已经一些小技巧

    目录 类型 1 联合注入 2 报错注入 2 1 floor 2 2 updatexml 2 3 extractvalue 3 bool注入 4 sleep注入 时间盲注 注入的一些小技巧 information schema过滤与无列名注入
  • 【Qt 6.2 参考手册】QT6.2所有模块

    Qt 6 2 所有模块 Qt 6 2 3 参考文档 内容 Qt基础模块 Qt扩展模块 接下来去哪里 所有模块 Qt基础模块 Qt基础模块在所有平台上定义了Qt的基础 它们可在所有受支持的开发平台和经过测试的目标平台上使用 除了测试模块将保持
  • Linux(centOS7)常用命令

    linux常用命令 监控linux系统情况 查看进程 查看占用的端口 服务状态 修改ip 临时修改ip 永久修改ip 查找文件 权限 包 安装图形界面 查看文件 防火墙 文件编辑 脚本 系统 scp传输 系统用户 修改文件sed i wc命
  • PHP问题:Deprecated: Function split() is deprecated in解决方法

    今天在测试php网站程序的时候 用 分割数组的时候突然出现Deprecated Function split is deprecated in 的错误提示 意思就是 函数方法split 已经被弃用了 然后查了下php文档 原来是随着版本的更
  • zabbix 钉钉&微信&企微告警(动作&操作&消息内容模板)

    一 环境配置 1 配置zabbix服务端 2 配置监控主机 监控项 监控模板 zabbix配置安装 this page is used to test the proper operation of 疯飙的蜗牛的博客 CSDN博客 二 触发
  • SRAMC spec

    SRAMC规范分析 AHB SRAMC这个项目是选取自SOC的一部分 通过AHB总线进行读写操作 实现了下面的功能 功能点 8个8x8k的设计 8 16 32位的读写 低功耗bank core选择 单周期读写 dft bist测试 模块 包
  • Docker 部署学习(三),构建redis服务,并启用密码认证(基于docker pull redis)

    参考 docker官方redis文档 1 有特殊版本需求的可以查看redis镜像tag版本 2 选择最新版 latest docker pull redis latest 3 启动容器并设置密码 docker run name redis
  • 活动预告丨易盾CTO朱浩齐将出席2018 AIIA大会,分享《人工智能在内容安全的应用实践》

    本文来自网易云社区 对于很多人来讲 仿佛昨天才燃起来的人工智能之火 转眼间烧遍了各个角落 如今我们的生活中 处处渗透着人工智能 10月16日 2018年 AIIA人工智能开发者大会在苏州举办 网易云易盾CTO朱浩齐将出席本次大会 AI安全分
  • springboot整合log4j

    1 log4j文件
  • Maven和Tycho

    点进来读这篇文章的朋友 我假定你已经知道maven的基本知识 也知道Eclipse 知道Eclipse是基于OSGi 初步了解Eclipse插件开发或者说OSGi模块化开发 如果对这些知识不了解 甚至完全没有听过 那请绕开本文 Maven简
  • mysql连接不上数据库

    1 打开 DOS 窗口 输入 mysql 连接命令时 提示报错 Cannot connect to MySQL server on localhost 10061 如下图 2 上面问题原因 可能是本地服务没开 需要开启本地服务 按 Win
  • 高考扎推报网络安全专业,非科班的你还在观望等机会流失吗?

    又是一年高考季 在等待成绩出来的这段时间 所有考生和家长都在积极地研究着专业报考这个大难题 尤其是理工科 选好一个专业是非常重要的 专业对于普通家庭的孩子来说就是你安身立命的根本 今年的就业形势让家长们都绷紧了神经 大家都对专业选择更加的慎
  • unity3d : unity Editor 已停止工作

    问题 安装unity后打开unity就会出现 unity Editor 已停止运行 原因 1 如果是ghost win7 系统 这个系统不稳定 可以重装 win7旗舰版试一试 2 看看你的系统是不是64位sp1 如果不是的话 请安装sp1后
  • ES的嵌套查询和嵌套聚合

    1 想要实现嵌套查询和嵌套聚合 首先需要在索引里面设置某个属性是嵌套类型 一般是List type nested 2 API的demo 嵌套查询 使用场景 需要根据list中的两个字段以and的关系进行查询 构造布尔查询 BoolQuery