2011-09-08 39 views
2

我正在查詢SQLite數據庫的緯度/經度細節。緯度查詢 - 精度

SELECT * FROM tblMain 
    where latitude > -33.866 and latitude <=-33.865 
    and longitude > 151.20 and longitude <= 151.209 

我想給用戶一個範圍查詢(一公里2公里等)

多少米在每個緯度選擇/ Longitide這樣我就可以計算出查詢的決議?

+0

你應該檢查出的大圓公式是有用的。這應該完成你試圖計算的東西。 http://stackoverflow.com/questions/574691/mysql-great-circle-distance-haversine-formula –

回答

4

你可以用一點點三角學和地球半徑的近似來解決這個問題。

earthradius = 6371 km 
distance(deg1, deg2) = earthradius * sin((2pi * (deg2-deg1))/360.) 

它也可以是要記住,1 arc second是30m左右

3

緯度一度差異約111.3公里,一度差異取決於緯度:111.3公里* cos(緯度)。精度在整個歐洲約爲20公里。