Ich habe einen Index, der Satz von Geo-Standorten in verschachtelten Objekt speichert.Wie Eingeschränkte zurückgegebene verschachtelte Objekte in Elasticsearch zu beschränken
{
......,
"geo_points" : [
{
"lat" : ...
"lon" : ...
},
.......
]
}
und Abfrage ist
{
sort: {
_geo_distance: {
geo_points: {
lat: "",
lon: ""
},
order: 'asc',
unit: 'km'
}
},
query: {
filtered: {
query: {
bool: {
must: [
{
range: {
endtime: {gte: ""}
}
},
{
range:{
starttime: {lte: ""}
}
}
],
should: [
{
nested: {
path: 'categories',
filter: {
bool: {
should: { terms: { 'categories.id' => [1,2,3,4]} }
}
}
}
}
],
minimum_number_should_match: 1
}
},
filter: {
geo_distance: {
distance: "25km",
geo_points: {lat: "",lon: ""}
}
}
}
},
from: 0, size: 100
}
und es ist für geo-Abfragen (sortiert nach Entfernung) verwendet, würde ich gerne wissen, ob es möglich ist, mit der geo_points zurückzukehren Lage nur passende (n) oder
kann ich sagen, nur X-Standort (e) zurückgeben?
Gibt es einen bestehenden Weg, dies zu tun inner_hits? und können Sie mir auch eine Beispielabfrage geben, wenn es möglich ist?
Danke.