版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java+springboot+elasticsearch7.6.2实现分组查询(平级+层。。。Java+springboot+elasticsearch7.6.2实现分组查询(平级+层级)并实现script多字段拼接查询简介:关于elasticsearch的“层级”聚合,百度⼀下有⼀⼤堆⽂章。这⾥不再啰嗦了,由于百度了三个⼩时,也没找到我想要的"平级"查询的⽅法,最后还是⾃⼰研究源码整除来的,其实就是那么那么简单,只是没有例⼦,就不好整。上⼲货。注:对es⾥的专业⽤语不熟,所以这⾥⽤的"平级","层级"两个测只是形象词语,不是es专业叫法。。。知道叫法的请留⾔告知。⽬录第⼀步、实现平级搜索。先看⼀下,测试数据的数据结构:kibana:GETermsftrv1/_search{"query":{"match_all":{}}}结果:{"took":0,"timed_out":false,"_shards":{"total":1,"successful":1,"skipped":0,"failed":0},"hits":{"total":{"value":6,"relation":"eq"},"max_score":1.0,"hits":[{"_index":"ermsftrv1","_type":"_doc","_id":"6502586031240448","_score":1.0,"_source":{"annual":"","archName"新建:⽂"本⽂档","archNo":"0022-SB0000.TODO-TODO-001","archTypeCode":"SB0000","archTypeId":"6485930821313792","archTypeId":"6485930821313792","archTypeName"设备:仪"器","archivedDate":1587545484000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6502586302145792,"id":"6502586031240448","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"hanfeixian","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650556800000,"secretId":"2","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000722","writingDate":1650556800000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6500384144856320","_score":1.0,"_source":{"annual":"","archName"问题:"","archNo":"0022-JS0000-TODO.-TODO-027","archTypeCode":"JS0000","archTypeId":"6485924961527040","archTypeName"建设:项"⽬","archivedDate":1587548214000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6502597485647104,"id":"6500384144856320","pageNum":"1","picPage":0,"responsibleDept":"","responsibleOper":"hanfeixian","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650038400000,"secretId":"2","secretPeriodId":9,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000723","writingDate":1650038400000,"year":"2020""year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503214760639744","_score":1.0,"_source":{"annual":"2020","archName"曹操:出"⾏-2⾏程单","archNo":"0022-ZZ0100.TODO-03-006","archTypeCode":"ZZ0100","archTypeId":"6489894262050048","archTypeName":企"01业证照","archivedDate":1587699428000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503216857251072,"id":"6503214760639744","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"年:","30"savePeriodId":"3","secret"核⼼商:密"","secretExpDate":1638633600000,"secretId":"3","secretPeriodId":1,"sectId":"6480626827621632","sectName"新奥:集"团股份有限公司","sectNo":"A0022","thridId":"A0022-2020-0000000187","writingDate":1638633600000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503218290695424","_score":1.0,"_source":{"annual":"","archName"消息:接"⼊规范","archNo":"0022-ZZ0200.TODO-K093-002","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587709784000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":2,"expDate":1619258366000,"fileNo":"","handlerId":6503218290752768,"id":"6503218290695424","pageNum":"0","picPage":0,"responsibleDept":"","responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"核⼼商:密"","secretExpDate":1808560781000,"secretId":"3","secretPeriodId":7,"sectId":"6480626827621632","sectName"新奥:集"团股份有限公司","sectNo":"A0022","thridId":"A0022-2020-0000000318","writingDate":1584547200000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503265140862208","_score":1.0,"_source":{"annual":"","archName"新奥:档"案系统-项⽬进度计划-20200408","archNo":"0022-ZZ0200.TODO-null-010","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587711282000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503265140927744,"id":"6503265140862208","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"核⼼商:密"","secretExpDate":1649347200000,"secretId":"3","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000768","writingDate":1649347200000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503265140526336","_score":1.0,"_source":{"annual":"","archName"新奥:档"案系统-项⽬进度计划-20200415","archNo":"0022-ZZ0200.TODO-null-011","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587711282000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503265411443968,"id":"6503265140526336","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650384000000,"secretId":"2","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000769","writingDate":1650384000000,"year":"2020"}}]}}实现archTypeId和year做聚合实现平级分组。kibana:POSTermsftrv1/_search{"aggs":{"archTypeGroup":{"terms":{"field":"archTypeId.keyword","size":10}},"yearGroup":{"terms":{"field":"year.keyword","size":10}}}}结果:{"took":1,"timed_out":false,"_shards":{"total":1,"successful":1,"skipped":0,"failed":0},"hits":{"total":{"value":6,"relation":"eq"},"max_score":1.0,"hits":[{"_index":"ermsftrv1","_type":"_doc","_id":"6502586031240448","_score":1.0,"_source":{"annual":"","archName"新建:⽂"本⽂档","archNo":"0022-SB0000.TODO-TODO-001","archTypeCode":"SB0000","archTypeId":"6485930821313792","archTypeName"设备:仪"器","archivedDate":1587545484000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6502586302145792,"id":"6502586031240448","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"hanfeixian","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650556800000,"secretId":"2","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000722","writingDate":1650556800000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6500384144856320","_score":1.0,"_source":{"annual":"","archName"问题:"","archNo":"0022-JS0000-TODO.-TODO-027","archTypeCode":"JS0000","archTypeId":"6485924961527040","archTypeName"建设:项"⽬","archivedDate":1587548214000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6502597485647104,"id":"6500384144856320","pageNum":"1","picPage":0,"responsibleDept":"","responsibleOper":"hanfeixian","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650038400000,"secretId":"2","secretPeriodId":9,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000723","writingDate":1650038400000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503214760639744","_score":1.0,"_source":{"annual":"2020","archName"曹操:出"⾏-2⾏程单","archNo":"0022-ZZ0100.TODO-03-006","archTypeCode":"ZZ0100","archTypeId":"6489894262050048","archTypeName":企"01业证照","archivedDate":1587699428000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503216857251072,"id":"6503214760639744","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"年:","30"savePeriodId":"3","secret"核⼼商:密"","secretExpDate":1638633600000,"secretId":"3","secretPeriodId":1,"sectId":"6480626827621632","sectName"新奥:集"团股份有限公司","sectNo":"A0022","thridId":"A0022-2020-0000000187","writingDate":1638633600000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503218290695424","_score":1.0,"_source":{"annual":"","archName"消息:接"⼊规范","archNo":"0022-ZZ0200.TODO-K093-002","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587709784000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":2,"expDate":1619258366000,"fileNo":"","handlerId":6503218290752768,"id":"6503218290695424","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"核⼼商:密"","secretExpDate":1808560781000,"secretId":"3","secretPeriodId":7,"sectId":"6480626827621632","sectName"新奥:集"团股份有限公司","sectNo":"A0022","thridId":"A0022-2020-0000000318","writingDate":1584547200000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503265140862208","_score":1.0,"_source":{"annual":"","archName"新奥:档"案系统-项⽬进度计划-20200408","archNo":"0022-ZZ0200.TODO-null-010","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587711282000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503265140927744,"id":"6503265140862208","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"核⼼商:密"","secretExpDate":1649347200000,"secretId":"3","secretId":"3","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000768","writingDate":1649347200000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503265140526336","_score":1.0,"_source":{"annual":"","archName"新奥:档"案系统-项⽬进度计划-20200415","archNo":"0022-ZZ0200.TODO-null-011","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587711282000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503265411443968,"id":"6503265140526336","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650384000000,"secretId":"2","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000769","writingDate":1650384000000,"year":"2020"}}]},"aggregations":{"yearGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{"key":"2020","doc_count":6}]},"archTypeGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":["buckets":[{"key":"6495573858862336","doc_count":3},{"key":"6485924961527040","doc_count":1},{"key":"6485930821313792","doc_count":1},{"key":"6489894262050048","doc_count":1}]}}}javaspringboot实现:SearchRequestsearchRequest=newSearchRequest(ermsesProperties.getIndex());SearchSourceBuildersourceBuilder=newSearchSourceBuilder();//第⼀个字段进⾏分组TermsAggregationBuilderyearGroupAgg=AggregationBuilders.terms("yearGroup").field("year.keyword");//根据第⼆个字段进⾏分组TermsAggregationBuilderarchTypeGroupAgg=AggregationBuilders.terms("archTypeGroup").field("archTypeId.keyword");//如果存在第三个,以此类推...//只需要平级添加聚合条件即可sourceBuilder.aggregation(yearGroupAgg);sourceBuilder.aggregation(archTypeGroupAgg);searchRequest.source(sourceBuilder);第⼆部、实现平级+层级分组聚合实现archTypeId和year做聚合实现平级分组,同时实现archTypeId和secret层级聚合分组(也是百度中⼤篇幅的层级聚合分组)。kibana:POSTermsftrv1/_search{"aggs":{"archTypeGroup":{"terms":{"field":"archTypeId.keyword","size":10},"aggs":{"secretGroup":{"terms":{"field":"secret.keyword"}}}},"yearGroup":{"terms":{"field":"year.keyword","size":10}}}}结果:{"took":2,"timed_out":false,"_shards":{"total":1,"successful":1,"skipped":0,"failed":0},"hits":{"total":{"value":6,"relation":"eq"},"max_score":1.0,"hits":[{"_index":"ermsftrv1","_type":"_doc","_id":"6502586031240448","_score":1.0,"_source":{"annual":"","archName"新建:⽂"本⽂档","archNo":"0022-SB0000.TODO-TODO-001","archTypeCode":"SB0000","archTypeId":"6485930821313792","archTypeName"设备:仪"器","archivedDate":1587545484000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6502586302145792,"handlerId":6502586302145792,"id":"6502586031240448","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"hanfeixian","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650556800000,"secretId":"2","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000722","writingDate":1650556800000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6500384144856320","_score":1.0,"_source":{"annual":"","archName"问题:"","archNo":"0022-JS0000-TODO.-TODO-027","archTypeCode":"JS0000","archTypeId":"6485924961527040","archTypeName"建设:项"⽬","archivedDate":1587548214000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6502597485647104,"id":"6500384144856320","pageNum":"1","picPage":0,"responsibleDept":"","responsibleOper":"hanfeixian","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650038400000,"secretId":"2","secretPeriodId":9,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000723","writingDate":1650038400000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503214760639744","_score":1.0,"_source":{"annual":"2020","archName"曹操:出"⾏-2⾏程单","archNo":"0022-ZZ0100.TODO-03-006","archTypeCode":"ZZ0100","archTypeId":"6489894262050048","archTypeName":企"01业证照","archivedDate":1587699428000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503216857251072,"id":"6503214760639744","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"年:","30"savePeriodId":"3","secret"核⼼商:密"","secretExpDate":1638633600000,"secretId":"3","secretPeriodId":1,"sectId":"6480626827621632","sectName"新奥:集"团股份有限公司","sectNo":"A0022","thridId":"A0022-2020-0000000187","writingDate":1638633600000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503218290695424","_score":1.0,"_source":{"annual":"","archName"消息:接"⼊规范","archNo":"0022-ZZ0200.TODO-K093-002","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587709784000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":2,"expDate":1619258366000,"fileNo":"","handlerId":6503218290752768,"id":"6503218290695424","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"核⼼商:密"","secretExpDate":1808560781000,"secretId":"3","secretPeriodId":7,"sectId":"6480626827621632","sectName"新奥:集"团股份有限公司","sectNo":"A0022","thridId":"A0022-2020-0000000318","writingDate":1584547200000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503265140862208","_score":1.0,"_source":{"annual":"","archName"新奥:档"案系统-项⽬进度计划-20200408","archNo":"0022-ZZ0200.TODO-null-010","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587711282000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503265140927744,"id":"6503265140862208","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"核⼼商:密"","secretExpDate":1649347200000,"secretId":"3","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000768","writingDate":1649347200000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503265140526336","_score":1.0,"_source":{"annual":"","archName"新奥:档"案系统-项⽬进度计划-20200415","archNo":"0022-ZZ0200.TODO-null-011","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587711282000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503265411443968,"id":"6503265140526336","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650384000000,"secretId":"2","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000769","writingDate":1650384000000,"year":"2020"}}]},"aggregations":{"yearGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{"key":"2020","doc_count":6}]},"archTypeGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{"key":"6495573858862336","doc_count":3,"secretGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{核"key"⼼商密:"","doc_count":2},{普"key"通商密:"","doc_count":1}]}},{"key":"6485924961527040","doc_count":1,"secretGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{普"key"通商密:"","doc_count":1}]}},{"key":"6485930821313792","doc_count":1,"secretGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{普"key"通商密:"","doc_count":1}]}},{"key":"6489894262050048","doc_count":1,"secretGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{核"key"⼼商密:"","doc_count":1}]}}]}}}java实现:SearchRequestsearchRequest=newSearchRequest(ermsesProperties.getIndex());SearchSourceBuildersourceBuilder=newSearchSourceBuilder();//第⼀个字段进⾏分组TermsAggregationBuilderyearGroupAgg=AggregationBuilders.terms("yearGroup").field("year.keyword");//根据第⼆个字段进⾏分组TermsAggregationBuilderarchTypeGroupAgg=AggregationBuilders.terms("archTypeGroup").field("archTypeId.keyword");//⾃⼰聚合分组,⽣命⽅式⼀样TermsAggregationBuildersecretGroup=AggregationBuilders.terms("secretGroup").field("secret.keyword");//只需要平级添加聚合条件即可sourceBuilder.aggregation(yearGroupAgg);//设置聚合分组时,同事设置⼦分组(⼦层级)sourceBuilder.aggregation(archTypeGroupAgg.subAggregation(secretGroup));searchRequest.source(sourceBuilder);第三部、script实现多字段查询实现archTypeId和year平级聚合分组,同事查询出archTypeId对应的中⽂名称archTypeName。其中#split#是⾃定义的。kibana:POSTermsftrv1/_search{"aggs":{"archTypeGroup":{"terms":{"script":"doc['archTypeId.keyword'].value+'#split#'+doc['archTypeName.keyword'].value","size":10}},"yearGroup":{"terms":{"field":"year.keyword","size":10}}}}结果:{"took":1,"timed_out":false,"_shards":{"total":1,"successful":1,"skipped":0,"failed":0},"hits":{"total":{"value":6,"relation":"eq"},"max_score":1.0,"hits":[{"_index":"ermsftrv1","_type":"_doc","_id":"6502586031240448","_score":1.0,"_source":{"annual":"","archName"新建:⽂"本⽂档","archNo":"0022-SB0000.TODO-TODO-001","archTypeCode":"SB0000","archTypeId":"6485930821313792","archTypeName"设备:仪"器","archivedDate":1587545484000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6502586302145792,"id":"6502586031240448","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"hanfeixian","savePeriod"永久:",""savePeriodId":"1","savePeriodId":"1","secret"普通商:密"","secretExpDate":1650556800000,"secretId":"2","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000722","writingDate":1650556800000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6500384144856320","_score":1.0,"_source":{"annual":"","archName"问题:"","archNo":"0022-JS0000-TODO.-TODO-027","archTypeCode":"JS0000","archTypeId":"6485924961527040","archTypeName"建设:项"⽬","archivedDate":1587548214000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6502597485647104,"id":"6500384144856320","pageNum":"1","picPage":0,"responsibleDept":"","responsibleOper":"hanfeixian","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650038400000,"secretId":"2","secretPeriodId":9,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000723","writingDate":1650038400000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503214760639744","_score":1.0,"_source":{"annual":"2020","archName"曹操:出"⾏-2⾏程单","archNo":"0022-ZZ0100.TODO-03-006","archTypeCode":"ZZ0100","archTypeId":"6489894262050048","archTypeName":企"01业证照","archivedDate":1587699428000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503216857251072,"id":"6503214760639744","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"年:","30"savePeriodId":"3","secret"核⼼商:密"","secretExpDate":1638633600000,"secretId":"3","secretPeriodId":1,"sectId":"6480626827621632","sectName"新奥:集"团股份有限公司","sectNo":"A0022","thridId":"A0022-2020-0000000187","writingDate":1638633600000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503218290695424","_score":1.0,"_source":{"annual":"","archName"消息:接"⼊规范","archNo":"0022-ZZ0200.TODO-K093-002","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587709784000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":2,"expDate":1619258366000,"fileNo":"","handlerId":6503218290752768,"id":"6503218290695424","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"核⼼商:密"","secretExpDate":1808560781000,"secretId":"3","secretPeriodId":7,"sectId":"6480626827621632","sectName"新奥:集"团股份有限公司","sectNo":"A0022","thridId":"A0022-2020-0000000318","writingDate":1584547200000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503265140862208","_score":1.0,"_source":{"annual":"","archName"新奥:档"案系统-项⽬进度计划-20200408","archNo":"0022-ZZ0200.TODO-null-010","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587711282000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503265140927744,"id":"6503265140862208","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"核⼼商:密"","secretExpDate":1649347200000,"secretId":"3","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000768","writingDate":1649347200000,"year":"2020"}},{"_index":"ermsftrv1","_type":"_doc","_id":"6503265140526336","_score":1.0,"_source":{"annual":"","archName"新奥:档"案系统-项⽬进度计划-20200415","archNo":"0022-ZZ0200.TODO-null-011","archTypeCode":"ZZ0200","archTypeId":"6495573858862336","archTypeName":领"02导证照","archivedDate":1587711282000,"archivedDep":"1753-11-1100:00:00","archivedOperator":"","documentPage":0,"entityTypeId":1,"expDate":-6820704000000,"fileNo":"","handlerId":6503265411443968,"id":"6503265140526336","pageNum":"0","picPage":0,"responsibleDept":"","responsibleOper":"zhangjunk","savePeriod"永久:",""savePeriodId":"1","secret"普通商:密"","secretExpDate":1650384000000,"secretId":"2","secretPeriodId":1,"sectId":"6480640146142464","sectName"新奥:集"团档案局","sectNo":"A0022","thridId":"A0022-2020-0000000769","writingDate":1650384000000,"year":"2020"}}]},"aggregations":{"yearGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{"key":"2020","doc_count":6}]},"archTypeGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":0,"buckets":[{"key":"6495573858862336#split#02领导证照","doc_count":3},{"key":"6485924961527040#split#建设项⽬","doc_count":1},{"key":"6485930821313792#split#设备仪器","doc_count":1},{"key":"6489894262050048#split#01企业证照","doc_count":1}]}}}java实现:SearchRequestsearchRequest=newSearchRequest(ermsesProperties.getIndex());SearchSourceBuildersourceBuilder=newSearchSourceBuilder();//第⼀个字段进⾏分组TermsAggregationBuilderyearGroupAgg=AggregationBuilders.terms("yearGroup").field("year.keyword");//第⼆个字段进⾏分组,使⽤script⽅式拼接返回值,但是要保证archTypeId和archTypeName是⼀对⼀的Scriptscript=newScript("doc['archTypeId.keyword'].value+'#split#'+doc['archTypeName.keyword'].value");TermsAggregationBuilderarchTypeGroupAgg=AggregationBuilders.terms("archTypeGroup").script(script);//添加aggregationsourceBuilder.aggregation(yearGroupAgg);sourceBuilder.aggregation(archTypeGroupAgg);searchRequest.source(sourceBuilder);刚接触es,不熟悉,最新版本的教程也不多。实际上基本是通过kibana敲命令琢磨出来的。建议装⼀个kibana或者head来辅助⾃⼰熟悉es。四、分词的字段做聚合这种情况,先看常规做法。这⾥以archTypeCode2和archTypeName做平级聚合,但是archTypeName字段是分词字段。往下看:kibana:POSTermsftrv1/_search{"aggs":{"archTypeGroup":{"terms":{"field":"archTypeCode2","size":10}},"yearGroup":{"terms":{"field":"archTypeName","size":10}}}}聚合结果:"aggregations":{"yearGroup":{"doc_count_error_upper_bound":0,"sum_other_doc_count":4,"buckets":[{"key"证照:",""doc_count":20},{"key":"01","doc_count":10},{"key"企业:",""doc_count":10},
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 有关钒矿粉的考题及完整答案解析
- 关于分诊预约制度的试题及参考答案
- 2026年大学英语四级听力理解专项练习题
- 2026年法律英语阅读理解专项训练
- 2026年考研专业课市场营销学核心考点习题
- 2026年信息安全意识提升与培训讲义
- 2026年海南省北师大版七年级英语下册第6单元阅读理解专项训练习题
- 2026年酒店管理专业综合能力考核试题
- 2026年行政职业能力测验卷言语理解与表达专项训练题
- 2026年学前儿童科学探究能力测试卷
- 建筑工程管理专业中级职称理论考试题及答案(2026年)
- 2026湖北黄石市阳新县事业单位统一招聘107人笔试参考题库及答案详解
- 2025年消防工程师继续教育题库-含解析147题
- 8.口腔类医疗服务价格项目落地政策解读
- GA/T 1999.3-2025道路交通事故车辆速度鉴定方法第3部分:基于视频图像
- 地理试卷江苏南京市六校联合体2025-2026学年2026届高三上学期8月学情调研测试(8.27-8.29)
- 退休人员返聘工作合同书二篇
- 商业航天行业研究系列7:垂直整合背后的隐形工业巨网SpaceX供应链与BOM全景拆解-卫星篇
- 云梯车安全专项施工方案
- 2026年全国职业院校技能大赛(电工赛项)理论考试核心题库(新版)
- 2026年国有企业新员工转正综合评估及企业文化认同与岗位技能达标测试
评论
0/150
提交评论