# ElasticSearchSamples **Repository Path**: ylimhhmily/ElasticSearchSamples ## Basic Information - **Project Name**: ElasticSearchSamples - **Description**: ElasticSearch Samples - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-07-05 - **Last Updated**: 2024-07-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 一、导入SQL文件至数据库 - 数据库文件地址:[t_goods.sql](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/main/resources/t_goods.sql) - 浏览器插件:[elasticsearch-head.7z](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_head/elasticsearch-head.7z) ``` hehui@hehuideMBP ElasticSearchSamples % mysql -uroot -prootroot mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 Server version: 8.0.34 MySQL Community Server - GPL Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | gkbook | | gkdemo | | gkfood | | gkmember | | gkpush | | gkuser | | hehui | | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 11 rows in set (0.01 sec) mysql> create database elasticsearch; Query OK, 1 row affected (0.00 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | elasticsearch | | gkbook | | gkdemo | | gkfood | | gkmember | | gkpush | | gkuser | | hehui | | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 12 rows in set (0.00 sec) mysql> use elasticsearch; Database changed mysql> source /Users/hehui/Downloads/t_goods.sql ...此处省略一堆的 SQL 插入成功的日志 mysql> show tables; +-------------------------+ | Tables_in_elasticsearch | +-------------------------+ | t_goods | +-------------------------+ 1 row in set (0.00 sec) mysql> select * from t_goods limit 10; +--------+--------------------------------------------------------------------+--------+-------+---------+---------------------+--------------+--------------+--------------------------------------------+--------+ | id | title | price | stock | saleNum | createTime | categoryName | brandName | spec | status | +--------+--------------------------------------------------------------------+--------+-------+---------+---------------------+--------------+--------------+--------------------------------------------+--------+ | 536563 | new2 - 阿尔卡特 (OT-927) 炭黑 联通3G手机 双卡双待 | 299000 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 阿尔卡特 | {"机身内存":"16G","网络":"联通3G"} | 0 | | 562379 | new8- 三星 W999 黑色 电信3G手机 双卡双待双通 | 11 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 三星 | {"机身内存":"16G","网络":"联通3G"} | 0 | | 605616 | 阿尔卡特 (OT-979) 冰川白 联通3G手机 | 309 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 阿尔卡特 | {"机身内存":"16G","网络":"联通3G"} | 0 | | 635906 | 阿尔卡特 (OT-927) 单电版 炭黑 联通3G手机 双卡双待 | 249 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 阿尔卡特 | {"机身内存":"16G","网络":"联通3G"} | 0 | | 679532 | 阿尔卡特 (OT-986+) 玫红 AK47 加强版 联通3G手机 | 499 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 阿尔卡特 | {"机身内存":"16G","网络":"联通3G"} | 0 | | 679533 | 阿尔卡特 (OT-986+) 曜石黑 AK47 加强版 联通3G手机 | 499 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 阿尔卡特 | {"机身内存":"16G","网络":"联通3G"} | 0 | | 691300 | 三星 B9120 钛灰色 联通3G手机 双卡双待双通 | 4399 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 三星 | {"机身内存":"16G","网络":"联通3G"} | 0 | | 738388 | 三星 Note II (N7100) 云石白 联通3G手机 | 1699 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 三星 | {"机身内存":"16G","网络":"联通3G"} | 0 | | 741524 | 三星 Note II (N7100) 钛金灰 联通3G手机 | 1699 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 三星 | {"机身内存":"16G","网络":"联通3G"} | 0 | | 816448 | 三星 Note II (N7100) 钻石粉 联通3G手机 | 1699 | 100 | 123 | 2016-09-30 21:33:18 | 手机 | 三星 | {"机身内存":"16G","网络":"联通3G"} | 0 | +--------+--------------------------------------------------------------------+--------+-------+---------+---------------------+--------------+--------------+--------------------------------------------+--------+ 10 rows in set (0.00 sec) ``` # 二、新建工程文件 ``` hehui@hehuideMBP elasticsearch-7.17.3 % cd /Users/hehui/Hmily/opensource/ElasticSearchSamples hehui@hehuideMBP ElasticSearchSamples % tree . ├── LICENSE ├── README.md ├── elasticsearch-samples.iml ├── pom.xml ├── src │   ├── main │   │   ├── java │   │   │   └── com │   │   │   └── hmily │   │   │   └── cloud │   │   │   └── elasticsearch │   │   │   ├── ApplicationRunner.java │   │   │   ├── config │   │   │   │   └── ds │   │   │   │   ├── DsConfig.java │   │   │   │   └── DsConsts.java │   │   │   ├── controller │   │   │   │   └── DemoController.java │   │   │   ├── dal │   │   │   │   ├── bean │   │   │   │   │   └── GoodsDO.java │   │   │   │   ├── mapper │   │   │   │   │   └── GoodsMapper.java │   │   │   │   └── model │   │   │   └── util │   │   │   ├── copy │   │   │   │   └── ShallowCopyUtils.java │   │   │   ├── json │   │   │   │   └── JacksonUtils.java │   │   │   └── page │   │   │   ├── PageRowBounds.java │   │   │   └── RowBounds.java │   │   └── resources │   │   ├── application.yml │   │   ├── mapper │   │   │   └── GoodsMapper.xml │   │   ├── mybatis-config.xml │   │   └── spring │   │   └── applicationContext-elasticsearch-ds.xml │   └── test │   └── java │   └── com │   └── hmily │   └── cloud │   └── elasticsearch │   └── mockito │   ├── DemoControllerTest.java │   └── GoodsMapperTest.java └── target hehui@hehuideMBP ElasticSearchSamples % ``` # 三、安装 ik_smart 分词器 ``` 下载地址:https://github.com/infinilabs/analysis-ik/releases/download/v7.17.3/elasticsearch-analysis-ik-7.17.3.zip hehui@hehuideMBP download_plugins % ls elasticsearch-analysis-ik-7.17.3.zip hehui@hehuideMBP download_plugins % unzip elasticsearch-analysis-ik-7.17.3.zip -d ik Archive: elasticsearch-analysis-ik-7.17.3.zip inflating: ik/elasticsearch-analysis-ik-7.17.3.jar inflating: ik/httpclient-4.5.2.jar inflating: ik/httpcore-4.4.4.jar inflating: ik/commons-logging-1.2.jar inflating: ik/commons-codec-1.9.jar creating: ik/config/ inflating: ik/config/stopword.dic inflating: ik/config/extra_main.dic inflating: ik/config/quantifier.dic inflating: ik/config/extra_single_word.dic inflating: ik/config/IKAnalyzer.cfg.xml inflating: ik/config/surname.dic inflating: ik/config/extra_single_word_low_freq.dic inflating: ik/config/extra_single_word_full.dic inflating: ik/config/preposition.dic inflating: ik/config/extra_stopword.dic inflating: ik/config/suffix.dic inflating: ik/config/main.dic inflating: ik/plugin-descriptor.properties inflating: ik/plugin-security.policy hehui@hehuideMBP download_plugins % ls elasticsearch-analysis-ik-7.17.3.zip ik hehui@hehuideMBP download_plugins % ls ik commons-codec-1.9.jar httpclient-4.5.2.jar commons-logging-1.2.jar httpcore-4.4.4.jar config plugin-descriptor.properties elasticsearch-analysis-ik-7.17.3.jar plugin-security.policy hehui@hehuideMBP download_plugins % mv ik ../plugins hehui@hehuideMBP download_plugins % pwd /Users/hehui/Hmily/install/elasticsearch/elasticsearch-7.17.3/download_plugins hehui@hehuideMBP download_plugins % cd ../plugins hehui@hehuideMBP plugins % ls ik hehui@hehuideMBP plugins % cd ../ hehui@hehuideMBP elasticsearch-7.17.3 % ls LICENSE.txt config elasticstop.sh modules NOTICE.txt data jdk.app nohup.out README.asciidoc download_plugins lib plugins bin elasticstart.sh logs hehui@hehuideMBP elasticsearch-7.17.3 % ``` # [四、使用 RestHighLevelClient 操作](https://gitee.com/ylimhhmily/ElasticSearchSamples/tree/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client) | 序号 | 功能 | 路径 | |---:|------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 01 | 创建客户端,尝试链接服务端 | [Test_01_CreateClient](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_01_CreateClient.java) | | 02 | 创建索引,并指定 mapping 数据结构 | [Test_02_CreateIndex](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_02_CreateIndex.java) | | 03 | 查询索引信息 | [Test_03_QueryIndex](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_03_QueryIndex.java) | | 04 | 删除索引信息 | [Test_04_DeleteIndex](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_04_DeleteIndex.java) | | 05 | 新增一个文档数据 | [Test_05_AddDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_05_AddDocument.java) | | 06 | 更新一个文档的部分字段值 | [Test_06_UpdateDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_06_UpdateDocument.java) | | 07 | 查询一个文档的内容 | [Test_07_QueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_07_QueryDocument.java) | | 08 | 删除一个文档内容 | [Test_08_DeleteDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_08_DeleteDocument.java) | | 09 | 批量新增文档数据 | [Test_09_BatchAddDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_09_BatchAddDocument.java) | | 10 | 批量删除文档数据 | [Test_10_BatchDeleteDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_10_BatchDeleteDocument.java) | | 11 | 批量导入数据到 ES | [Test_11_ImportAllDataToES](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_11_ImportAllDataToES.java) | | 12 | 全量搜索文档 | [Test_12_MatchAllQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_12_MatchAllQueryDocument.java) | | 13 | 根据指定条件搜索文档 | [Test_13_TermQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_13_TermQueryDocument.java) | | 14 | 分页搜索文档 | [Test_14_PagedMatchAllQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_14_PagedMatchAllQueryDocument.java) | | 15 | 排序搜索文档 | [Test_15_SortedMatchAllQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_15_SortedMatchAllQueryDocument.java) | | 16 | 全量搜索文档同时排除部分字段 | [Test_16_ExcludesMatchAllQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_16_ExcludesMatchAllQueryDocument.java) | | 17 | 多or条件搜索文档 | [Test_17_BoolShouldMatchQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_17_BoolShouldMatchQueryDocument.java) | | 18 | 范围搜索文档 | [Test_18_RangeQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_18_RangeQueryDocument.java) | | 19 | 模糊搜索文档内容 | [Test_19_FuzzyQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_19_FuzzyQueryDocument.java) | | 20 | 根据指定字段聚合处理取最值 | [Test_20_AggrQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_20_AggrQueryDocument.java) | | 21 | 根据指定字段聚合分组统计文档 | [Test_21_AggrGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_21_AggrGroupQueryDocument.java) | | 22 | 根据指定字段按照不同的范围分组统计数量 | [Test_22_AggrRangeGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_22_AggrRangeGroupQueryDocument.java) | | 23 | 根据指定字段分组后并按照数量升序排列 | [Test_23_AggrTermsGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_23_AggrTermsGroupQueryDocument.java) | | 24 | 根据指定字段分组后并按照数量升序排列,并且统计每组的最值 | [Test_24_SubAggrTermsGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_24_SubAggrTermsGroupQueryDocument.java) | | 25 | 根据指定字段分组后并按照数量升序排列,并且统计每组的最值,最后跟踪出哪些数据经过了聚合处理 | [Test_25_TophitsSubAggrTermsGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_25_TophitsSubAggrTermsGroupQueryDocument.java) | | 26 | 文档相关度自评分处理 | [Test_26_FunctionScoreQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/resthighlevel_client/Test_26_FunctionScoreQueryDocument.java) | # [五、使用 ElasticsearchClient 操作](https://gitee.com/ylimhhmily/ElasticSearchSamples/tree/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client) | 序号 | 功能 | 路径 | |---:|------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 01 | 创建客户端,尝试链接服务端 | [Test_01_CreateClient](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_01_CreateClient.java) | | 02 | 创建索引,并指定 mapping 数据结构 | [Test_02_CreateIndex](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_02_CreateIndex.java) | | 03 | 查询索引信息 | [Test_03_QueryIndex](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_03_QueryIndex.java) | | 04 | 删除索引信息 | [Test_04_DeleteIndex](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_04_DeleteIndex.java) | | 05 | 新增一个文档数据 | [Test_05_AddDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_05_AddDocument.java) | | 06 | 更新一个文档的部分字段值 | [Test_06_UpdateDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_06_UpdateDocument.java) | | 07 | 查询一个文档的内容 | [Test_07_QueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_07_QueryDocument.java) | | 08 | 删除一个文档内容 | [Test_08_DeleteDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_08_DeleteDocument.java) | | 09 | 批量新增文档数据 | [Test_09_BatchAddDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_09_BatchAddDocument.java) | | 10 | 批量删除文档数据 | [Test_10_BatchDeleteDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_10_BatchDeleteDocument.java) | | 11 | 批量导入数据到 ES | [Test_11_ImportAllDataToES](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_11_ImportAllDataToES.java) | | 12 | 全量搜索文档 | [Test_12_MatchAllQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_12_MatchAllQueryDocument.java) | | 13 | 根据指定条件搜索文档 | [Test_13_TermQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_13_TermQueryDocument.java) | | 14 | 分页搜索文档 | [Test_14_PagedMatchAllQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_14_PagedMatchAllQueryDocument.java) | | 15 | 排序搜索文档 | [Test_15_SortedMatchAllQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_15_SortedMatchAllQueryDocument.java) | | 16 | 全量搜索文档同时排除部分字段 | [Test_16_ExcludesMatchAllQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_16_ExcludesMatchAllQueryDocument.java) | | 17 | 多or条件搜索文档 | [Test_17_BoolShouldMatchQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_17_BoolShouldMatchQueryDocument.java) | | 18 | 范围搜索文档 | [Test_18_RangeQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_18_RangeQueryDocument.java) | | 19 | 模糊搜索文档内容 | [Test_19_FuzzyQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_19_FuzzyQueryDocument.java) | | 20 | 根据指定字段聚合处理取最值 | [Test_20_AggrQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_20_AggrQueryDocument.java) | | 21 | 根据指定字段聚合分组统计文档 | [Test_21_AggrGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_21_AggrGroupQueryDocument.java) | | 22 | 根据指定字段按照不同的范围分组统计数量 | [Test_22_AggrRangeGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_22_AggrRangeGroupQueryDocument.java) | | 23 | 根据指定字段分组后并按照数量升序排列 | [Test_23_AggrTermsGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_23_AggrTermsGroupQueryDocument.java) | | 24 | 根据指定字段分组后并按照数量升序排列,并且统计每组的最值 | [Test_24_SubAggrTermsGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_24_SubAggrTermsGroupQueryDocument.java) | | 25 | 根据指定字段分组后并按照数量升序排列,并且统计每组的最值,最后跟踪出哪些数据经过了聚合处理 | [Test_25_TophitsSubAggrTermsGroupQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_25_TophitsSubAggrTermsGroupQueryDocument.java) | | 26 | 文档相关度自评分处理 | [Test_26_FunctionScoreQueryDocument](https://gitee.com/ylimhhmily/ElasticSearchSamples/blob/master/src/test/java/com/hmily/cloud/elasticsearch/mockito/elasticsearch_client/Test_26_FunctionScoreQueryDocument.java) |