大圆距离公式:T-SQL

sla*_*dau 9 t-sql great-circle

所以我有一个表中有一堆不同的地址.我需要一个proc,它将选择该表中与传入的lat/long值相距指定距离的地址.

我的表的例子如下:

- messageId
- lat (float)
- long (float)
Run Code Online (Sandbox Code Playgroud)

Proc正在传入另一个纬度/长度对(同时float也是一对)以及一个int(英里)

我发现这个http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=81360来计算实际公式,但我无法弄清楚在proc表单中修改它以便能够通过整个列表地址,只给我一个Id<=里程(我传入的)的地址,来自我传入的纬度/经度.

我可以在这里得到任何帮助吗?

谢谢!

tid*_*all 6

SQL Server 2008

使用空间函数STDistance返回距离(米)

geography :: Point(@ lat1,@ lon1,4326).STDistance(geography :: Point(@ lat2,@ lon2,4326))