Sort dans aggregations


(jean-baptiste daniel) #1

Bonjour,
je me casse un peu les dents depuis deux jours sur le tri d'une aggrégation...
l'objectif est de récupérer les addresses aggrégées et trier par distance d'un geopoint:

là le problème est que je trie bien chaque adresse par distance mais lorsque que j'aggrège pour éviter les doublons d'addresse, le tri se fait bien évidement sur le total (doc_count). Hors je voudrais justement que le tri final se fasse sur la distance.

voici la request: ( le "order" dans subdistinct est l'endroit où je suppose que le tri doit se faire)

{
"aggs": {
"subdistinct": {
"terms": {
"field": "address.location",
"size": 50,
"order": {
** XXX**
** }**
},
"aggs": {
"subdistinct2": {
"top_hits": {
"size": 1,
"_source": [
"id",
"surname",
"address.id",
"address.housenumber",
"address.street",
"address.city",
"address.postalcode"
],
"sort": [
{
"_geo_distance": {
"location": {
"lat": 44.834317,
"lon": -0.56921
},
"order": "asc",
"unit": "m",
"distance_type": "plane"
}
}
]
}
}
}
}
}
}

merci!!


(system) #2