ElasticSearch (Es) 分组查询 记录
首先表对应的实体类型:
public class bm_info{
/// <summary>
/// 单位
/// </summary>
public string source_unit { get; set; }
/// <summary>
/// 省份集合
/// </summary>
public List<in_place> place { get; set; }
}
public class in_place{
//省
public string province { get; set; }
}
1.简单分组查询
GET bm_info/_search
{
"aggs": {
"source_unit_agg": {
"terms": {
"field": "source_unit",
"size": 10
}
}
}
}
根据 source_unit 字段进行分组查询,分组名称 source_unit_agg , 分组大小 前10个.
2.对于数组的分组查询
GET bm_tec_info/_search
{
"aggs": {
"place_aggs": {
"nested": {
"path": "place"
},
"aggs": {
"province_aggs":{
"terms": {
"field": "place.province",
"size": 26
}
}
}
}
}
}
根据省份数组下,每个一个省份进行分组