使用SQL地理位置获取某个半径的位置
发布时间:2020-12-12 06:50:58 所属栏目:MsSql教程 来源:网络整理
导读:我有一个带有Geography类型的SQL表列: create table dbo.Events( Id int identity not null constraint PK_Events_Id primary key clustered (Id),Localization geography not null); 我怎样才能获得半径为40公里的所有活动?这可能吗? 谢谢, 米格尔 解决方
我有一个带有Geography类型的SQL表列:
create table dbo.Events ( Id int identity not null constraint PK_Events_Id primary key clustered (Id),Localization geography not null ); 我怎样才能获得半径为40公里的所有活动?这可能吗? 谢谢, 解决方法假设您有要搜索的点的纬度和经度:DECLARE @Origin GEOGRAPHY,-- distance defined in meters @Distance INTEGER = 40000; -- center point SET @Origin = GEOGRAPHY::STGeomFromText('POINT(-122.084039 37.42227)',4326); -- return all rows from events in 40km radius SELECT * FROM dbo.Events WHERE @Origin.STDistance(Localizaton) <= @Distance; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sql-server – SQL Server 2005性能审计
- MSSQL 解决link导数据至oracle出错:Server: Msg 7399, Lev
- SQLserver2000服务被挂起
- sqlserver 修改表字段默认值,或原字段不能为空,修改为可以
- sql-server – 为什么SSIS Runtime无法启动分布式事务?
- sql-server – 反转TSQL中单词的顺序
- SQL Server 2012降级至2008R2的方法
- 分析SQL语句性能3种方法分享
- 解决:SQLServer 2000 Driver for JDBC]Error establishing
- 在SQLServer处理中的一些问题及解决方法