Использование предложения WHERE для поиска POI в диапазоне расстояний от долготы и широты

Я использую следующий код sql, чтобы найти 'ВСЕ' точки, наиболее близкие к заданным координатам, но я бы хотел узнать конкретные точки вместо всех их. Когда я пытаюсь использовать предложение where, я получаю сообщение об ошибке, и оно не работает, и именно здесь я застрял, поскольку я использую только одну таблицу для всех координат всех точек.

SET @orig_lat=55.4058;  
SET @orig_lon=13.7907; 
SET @dist=10;
SELECT 
    *, 
    3956 * 2 * ASIN(SQRT(POWER(SIN((@orig_lat -abs(latitude)) * pi()/180 / 2), 2) 
    + COS(@orig_lat * pi()/180 ) * COS(abs(latitude) * pi()/180) 
    * POWER(SIN((@orig_lon - longitude) * pi()/180 / 2), 2) )) as distance 
FROM geo_kulplex.sweden_bobo
HAVING distance < @dist 
ORDER BY distance limit 10;
5
задан Kaii 27 February 2012 в 10:49
поделиться