我有一個小問題點(haversine公式Q),尋找圍繞指定的點的給定半徑
我只是測試使用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;
我得到了倫敦的緯度和經度,然後如圖中(的service_id,driver_id,journey_id,經度,緯度,DRIVER_STATUS)
4, 1, , 51.5034, -0.174751, ''
5, 1, 2, 51.477106, -0.137329, ''
所以對於結果集的順序指定的數據但是我什麼也沒得到,沒有行返回
然而,當我刪除having子句我得到以下結果集(的service_id,距離)
5, 4655.154600
4, 4658.309966
我被困在這個問題上,無法前進,因爲它和任何幫助將不勝感激。
查詢和這種從下面的鏈接 http://code.google.com/apis/maps/articles/phpsqlsearch.html
而且沒有人知道任何其他方法來解決同樣的問題,我看到了MySQL的空間相關的東西獲得,而是拿起這個,因爲它用起來比較方便
問候, MilindaD