我想用频道ID分组来获取最大和最小值,同时也想获取最大视频ID和最小视频ID。
{
"query": {
"term": {
"channel_id.keyword": {
"value": "UCQOd1f6pYldvhgvdQ_ktpGA"
}
}
},
"aggs": {
"views_max": {
"max": {
"field": "views",
"missing": 0
},
"_source":["video_id","views"]
},
"views_min": {
"min": {
"field": "views",
"missing": 0
},
"_source":["video_id","views"]
}
}
}
{
"aggs": {
"2": {
"terms": {
"field": "channel_id.keyword",
"order": {
"1": "desc"
},
"size": 10
},
"aggs": {
"1": {
"max": {
"field": "video_id"
}
},
"3": {
"min": {
"field": "video_id"
}
}
}
}
},
"size": 0,
"_source": {
"excludes": []
},
"query": {
"bool": {
"must": [],
"filter": [
{
"bool": {
"should": [
{
"match": {
"channel_id.keyword": "UCQOd1f6pYldvhgvdQ_ktpGA"
}
}
],
"minimum_should_match": 1
}
}
]
}
}
}
上面的查询将给出一个特定的channel_id的最大和最小的视频id。
{
"aggs": {
"2": {
"terms": {
"field": "channel_id.keyword",
"order": {
"1": "desc"
},
"size": 10
},
"aggs": {
"1": {
"max": {
"field": "video_id"
}
},
"3": {
"min": {
"field": "video_id"
}
}
}
}
},
"size": 0,
"_source": {
"excludes": []
}
}
有了上面的查询,你就可以为所有不同的channel_id获取各自的最大和最小video_id。