Hi !
Use "query".
ex :
{
"query" : {
"filtered" : {
"query" : {
"match_all" : {}
},
"filter" : {
"geo_distance" : {
"distance" : "50km",
"city.location" : {
"lat" : 43.4,
"lon" : 5.4
}
}
}
}
}
}
Le mardi 29 juillet 2014 22:30:12 UTC+2, Madhavan Ramachandran a écrit :
>
> Hi Team,
>
> I am trying to find a solution for the below
>
> 1. Geo boundary based search.. My index have property for lat and lon
> as double.. not as a geopoint.. Here is my mapping for my index..
>
> How do i use the lon and lat from the below mapping for geo distance
> filter/geo distance range filter ?
>
> Name Type Format Store?
> data string
>
> getpath string
>
> id double
>
> Region string
>
> Submarket string
>
> addr1 string
>
> addr2 string
>
> city string
>
> citymarket string
>
> country string
>
> countryid long
>
> cultureid long
>
> data string
>
> details string
>
> fax string
>
> id string
>
> language string
>
> lat double
>
> lon double
>
> When I search for the documents.. i got the below exception..
>
> Query :
> {
> "filter": {
> "geo_distance" : {
> "distance" : "300km",
> "location" : {
> "lat" : 45,
> "lon" : -122
> }
> }
>
> }
> }
>
> Exception:
> "error": "SearchPhaseExecutionException[Failed to execute phase [query],
> all shards failed; shardFailures
> {[o3f66HetT3OSpVw895w0nA][offlocations][4]:
> SearchParseException[[offlocations][4]: from[-1],size[-1]: Parse Failure
> [Failed to parse source [{\n\"filter\": {\n \"geo_distance\" : {\n
> \"distance\" : \"300km\",\n \"location\" : {\n \"lat\" : 45,\n \"lon\" :
> -122\n }\n } \n }\n}]]]; nested:
>
> I tried with removing the location, which i dont have in my mapping..
>
> {"filter": { "geo_distance" : { "distance" : "300km",
> "lat"
> : 45, "lon" : -122 } }}
>
> I got the exception as lon is not a geo_point field..
>
> ElasticsearchIllegalArgumentException[the character '-' is not a valid
> geohash character]; }]"
>
> If i remove the "-" infront of lon.. then the exception says :
>
> QueryParsingException[[offlocations] field [lon] is not a geo_point field];
>
>
>
--
You received this message because you are subscribed to the Google Groups
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/567759b4-21bb-489f-b08f-36ba982a30c8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.