Грани на расстоянии в solr- как генерировать ссылки, которые ищут в заданном диапазоне расстояния - PullRequest
3 голосов
/ 17 мая 2011

Довольно просто сгенерировать фасеты для диапазонов или «интервалов» расстояния в Solr: http://wiki.apache.org/solr/SpatialSearch#How_to_facet_by_distance

Что не описано, так это как сгенерировать ссылки для этих аспектов

Если это запрос на возврат всего в 5 км:

& q = : & fq = {! Geofilt sfield = store} & pt = 45.15, -93.85 & d = 5

- какой тогда будет синтаксис для поиска всего между 5 и 10 км?

В основном я могу генерировать фасеты расстояния, но я не знаю, как создать ссылки для фасетов расстояния:

например, как будут выглядеть ссылки для следующих аспектов:

Расстояние

0-1 км (2)

1-5 км (0)

5-20 км (0)

20-50 км (0)

50-100 км (0)

100-250 км (0)

1 Ответ

4 голосов
/ 17 мая 2011

Вики описывают это:

&q=*:*&sfield=store&pt=45.15,-93.85&facet.query={!frange l=0 u=5}geodist()&facet.query={!frange l=5.001 u=3000}geodist()

Это создаст фасет от 0 до 5 км, а другой - от 5 км до 3000 км.Измените значения в frange в соответствии с вашими потребностями.

Если вы имели в виду фильтрация с диапазоном расстояний, то перемещение фасетного запроса в запрос фильтра должно работать, например, fq={!frange l=5.001 u=3000}geodist()

...