您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在另一个范围内查找地理点-SQL Server

在另一个范围内查找地理点-SQL Server

假设您在数据库中具有点的经度和纬度值。

select * from yourtable where SQRT 
( POWER((yourtable.lat - reflat) * COS(reflat/180) * 40000 / 360, 2) 
+ POWER((yourtable.long - reflong) * 40000 / 360, 2)) < radiusofinterest

reflat和reflong是您想知道附近地点的起点。感兴趣的半径是到该点的距离。40000是地球的周长。您可以使用更准确的数字。

我还没有使用sqlServer检查语法。…所以那里可能有一些错误

cos(reflat)会根据您所在的纬度来校正周长。对于较小的距离,它应该可以正常工作。

SQLServer 2022/1/1 18:52:36 有296人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶