我有一個Microsoft SQL Server數據庫與地點表。每個位置都有其地址和經度和緯度座標。SQL Server的距離搜索
在我的應用程序中,用戶可以輸入一個郵政編碼,然後我們返回一個按位置關閉的列表。 這是我的方法。 a)使用郵政編碼數據庫我搜索經緯度,郵政編碼(這是中心點)。 b)中我運行這樣
SELECT Position_ID, distance(pos_lon,pos_lat,zip_lon,zip_lat) dist
FROM Positions
ORDER BY dist
「距離」的搜索是計算兩個點之間的距離的函數。
問題是,由於我的位置數據庫增加了運行時間,所以這些搜索正在開始增長。
有沒有更好的方法?
什麼版本的SQL?如果是2008年,請參閱下面的馬克·拜爾斯的回答。 –