2014-06-29 103 views
-1

在下面的查詢中,什麼是「cos(弧度(lat)」或「cos(弧度(lng)或」弧度(lat)「)?弧度()功能嗎?使用sql查詢經緯度的半徑搜索

SELECT id, (3959 * acos(cos(radians(37)) 
       * cos(radians(lat)) 
       * cos(radians(lng) 
       - radians(-122)) + sin(radians(37)) 
       * sin(radians(lat)))) AS distance 
FROM markers 
HAVING distance < 25 
ORDER BY distance LIMIT 20 OFFSET 0; 
+0

http://dev.mysql.com/doc/refman/5.0/en/mathematical-functions.html#function_radians – Noel

回答

2

圓形功能這裏(cos()sin())取角度以弧度(2 *在一個圓圈裨弧度),但該角度以度表示(360度的圓),所以Radians()函數將Degrees轉換爲Radians,以便循環函數將給出正確結果。

相關問題