我有一个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年,请参阅下面的马克·拜尔斯的回答。 –