j'ai un petit problème,Trouver les points autour d'un rayon d'un point spécifié (formule Haversine q)
je testais simplement l'utilisation de la formule de Haversine pour mon projet donné dans le projet, je précise un point et je veux trouver tous les points dans un rayon donné du point que j'ai fourni. Après beaucoup de google, j'ai essayé cette requête de formule haversine.
SELECT service_id, (3959 * acos(cos(radians(51.500152)) * cos(radians(latitude)) * cos(radians(longitude) - radians(-0.126236)) + sin(radians(51.500152)) * sin(radians(latitude)))) AS distance
FROM sys_t_taxi_real_time_servce HAVING distance < 25 ORDER BY distance LIMIT 0 , 20;
j'ai eu la latitude et la longitude pour Londres puis spécifié les données comme indiqué dans l'ordre (service_id, driver_id, journey_id, longitude, latitude, driver_status)
4, 1, , 51.5034, -0.174751, ''
5, 1, 2, 51.477106, -0.137329, ''
Donc, pour l'ensemble de résultats mais je ne reçois rien, aucune ligne retourné
cependant, quand je retire la clause having je reçois le résultat suivant set (service_id, distance)
5, 4655.154600
4, 4658.309966
Je suis reqally coincé sur ce problème et est incapable d'aller de l'avant à cause de cela et toute aide serait grandement appréciée.
La requête et tel a été obtenu à partir du lien suivant http://code.google.com/apis/maps/articles/phpsqlsearch.html
ne plus que quelqu'un sait toute autre méthode pour résoudre le même problème, j'ai vu des choses connexes mysql spacial, mais avait choisi cet car il était plus facile à utiliser
Cordialement, MilindaD