MSSQL 跟据经纬度查询到仓距离
发布时间:2023-05-09 13:15:40 所属栏目:MsSql教程 来源:
导读:--查找数据库中5公里内的记录
仓经:120.675104
仓伟:31.320949
道路系数:1.5
SELECT * FROM
(SELECT *,((6371.004*ACOS(SIN(31.320949/180*PI())*SIN(地纬/180*PI())+COS(31.320949/180*PI())*COS(地纬/180
仓经:120.675104
仓伟:31.320949
道路系数:1.5
SELECT * FROM
(SELECT *,((6371.004*ACOS(SIN(31.320949/180*PI())*SIN(地纬/180*PI())+COS(31.320949/180*PI())*COS(地纬/180
--查找数据库中5公里内的记录 仓经:120.675104 仓伟:31.320949 道路系数:1.5 SELECT * FROM (SELECT *,((6371.004*ACOS(SIN(31.320949/180*PI())*SIN(地纬/180*PI())+COS(31.320949/180*PI())*COS(地纬/180*PI())*COS((120.675104-地经)/180*PI())))*1.5) AS dis FROM 测试表) AS AA WHERE 到仓距离<=5 函数写法 ALTER FUNCTION [Getdistance] ( @GPSLng DECIMAL(12,6), @GPSLat DECIMAL(12,6), @Lng DECIMAL(12,6), @Lat DECIMAL(12,6) ) RETURNS DECIMAL(12,4) AS BEGIN DECLARE @result DECIMAL(12,4) SELECT @result=6371.004*ACOS(SIN(@GPSLat/180*PI())*SIN(@Lat/180*PI())+COS(@GPSLat/180*PI())*COS(@Lat/180*PI())*COS((@GPSLng-@Lng)/180*PI())) RETURN @result END //查找数据库中5公里内的记录 SELECT *,Getdistance(当期点的经度,当期点的纬度,经度字段,纬度字段) AS dis FROM TABLENAME WHERE dis<5 (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐