在SQL中,可以在字符串字段上使用MAX()来获取不同的值(假设group by是正确的)。
然而,这在ElasticSearch中是不可能的,因为MAX仅适用于数字字段。但是我想在聚合后检索一些字符串字段的值,所以我可以显示这些值。
例如假设一般书籍结构
{
"aggs" : {
"group_by_author" : { "terms" : { "field" : "author"},
"aggs" : {
"books_published" : { "sum" : { "field" : "name"}},
"distinct_title" : { "max" : {"field" : "some_relevant_field_name"}}
}
}
}
}
这里我不能在some_relevant_field_name上执行max,因为它是一个字符串。除了更多聚合之外,还有其他方法可以做到这一点吗?