Hi Grant, thanks for the reply. Is the logic for a function query that calculates distances that Yonik mentioned (gdist(position,101.2,234.3)) already implemented?
This could be either very inaccurate or load intense. If the logic isn't done until now maybe I can prepare it. Norman -----Ursprüngliche Nachricht----- Von: Grant Ingersoll [mailto:gsing...@apache.org] Gesendet: Dienstag, 12. Mai 2009 19:43 An: solr-user@lucene.apache.org Betreff: Re: AW: Geographical search based on latitude and longitude Yes, that is part of it, but there is more to it. See Yonik's comment about needs further down. On May 12, 2009, at 7:36 AM, Norman Leutner wrote: > So are you using boundary box to find results within a given range(km) > like mentioned here: > http://www.nsshutdown.com/projects/lucene/whitepaper/locallucene_v2.html > ? > > > Best regards > > Norman Leutner > all2e GmbH > > -----Ursprüngliche Nachricht----- > Von: Grant Ingersoll [mailto:gsing...@apache.org] > Gesendet: Dienstag, 12. Mai 2009 13:18 > An: solr-user@lucene.apache.org > Betreff: Re: Geographical search based on latitude and longitude > > See https://issues.apache.org/jira/browse/SOLR-773. In other words, > we're working on it and would love some help! > > -Grant > > On May 12, 2009, at 7:12 AM, Norman Leutner wrote: > >> Hi together, >> >> I'm new to Solr and want to port a geographical range search from >> MySQL to Solr. >> >> Currently I'm using some mathematical functions (based on GRS80 >> modell) directly within MySQL to calculate >> the actual distance from the locations within the database to a >> current location (lat and long are known): >> >> $query=SELECT street, zip, city, state, country, ". >> $radius."*ACOS(cos(RADIANS(latitude))*cos(". >> $theta.")*(sin(RADIANS(longitude))*sin(".$phi.") >> +cos(RADIANS(longitude))*cos(".$phi."))+sin(RADIANS(latitude))*sin(". >> $theta.")) AS Distance FROM ezgis_position WHERE ". >> $radius."*ACOS(cos(RADIANS(latitude))*cos(". >> $theta.")*(sin(RADIANS(longitude))*sin(".$phi.") >> +cos(RADIANS(longitude))*cos(".$phi."))+sin(RADIANS(latitude))*sin(". >> $theta.")) <= ".$range." ORDER BY Distance"; >> >> This works pretty fine and fast. Due to we want to include this >> within our Solr search result I would like to have a attribute like >> "actual_distance" within the result. Is there a way to use those >> functions like (radians, sin, acos,...) directly within Solr? >> >> Thanks in advance for any feedback >> Norman Leutner > > -------------------------- > Grant Ingersoll > http://www.lucidimagination.com/ > > Search the Lucene ecosystem (Lucene/Solr/Nutch/Mahout/Tika/Droids) > using Solr/Lucene: > http://www.lucidimagination.com/search > -------------------------- Grant Ingersoll http://www.lucidimagination.com/ Search the Lucene ecosystem (Lucene/Solr/Nutch/Mahout/Tika/Droids) using Solr/Lucene: http://www.lucidimagination.com/search