Коректний гео пошук в Sphinx

Як виявилось, стандартний підхід для геопошуку в Sphinx не працює.

Тобто якщо ви використаєте для індексування наступний вираз:

sql_query = select id, radians(longitude) as longitude, radians(latitude) as latitude from locations

Індекс не буде створено. Відповідно пошук працювати не буде. Навіть не знаю чи це баг чи фіча, але виправляється досить просто.

Слід додати одне текстове поле до результату:

sql_query = select id, radians(longitude) as longitude, radians(latitude) as latitude, location_name as location_name from locations

Індекс буде створено коректно.

Коментарі 2

AKolesnikov - 27 липня 2010, 17:53

Тобто пошук ведеться по назві з location_name?

zenyk - 29 липня 2010, 17:50

в цьому прикладі ні.

просто це поле має бути в результатах щоб відбувся сам пошук.

Коментувати
© 2009 - 2019, Розробка - соціальна ІТ спільнота.
Контакти: info@rozrobka.com
Правила користування