国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

SQLSERVER 根據地圖經緯度計算距離差示例

2020-07-25 13:03:23
字體:
來源:轉載
供稿:網友
SQL SERVER 根據地圖經緯度計算距離的公式
復制代碼 代碼如下:

go
--創建經緯度距離計算函數
CREATEFUNCTION [dbo].[fnGetDistance]
--LatBegin 開始經度
--LngBegin 開始維度
(@LatBegin REAL, @LngBegin REAL, @LatEnd REAL, @LngEnd REAL)
RETURNSFLOAT
AS
BEGIN
--距離(千米)
DECLARE @Distance REAL
DECLARE @EARTH_RADIUS REAL
SET @EARTH_RADIUS = 6378.137

DECLARE @RadLatBegin REAL,
@RadLatEnd REAL,
@RadLatDiff REAL,
@RadLngDiff REAL

SET @RadLatBegin = @LatBegin *PI()/ 180.0
SET @RadLatEnd = @LatEnd *PI()/ 180.0
SET @RadLatDiff = @RadLatBegin - @RadLatEnd
SET @RadLngDiff = @LngBegin *PI()/ 180.0 - @LngEnd *PI()/ 180.0

SET @Distance = 2 *ASIN(
SQRT(
POWER(SIN(@RadLatDiff / 2), 2)+COS(@RadLatBegin)*COS(@RadLatEnd)
*POWER(SIN(@RadLngDiff / 2), 2)
)
)

SET @Distance = @Distance * @EARTH_RADIUS
--SET @Distance = Round(@Distance * 10000) / 10000

RETURN @Distance
END

@Distance的單位為:千米
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 会同县| 郧西县| 苍山县| 五寨县| 岳池县| 信宜市| 礼泉县| 南京市| 鹤峰县| 秦皇岛市| 疏附县| 沁阳市| 白水县| 永和县| 湘潭市| 英山县| 东乌| 赤峰市| 扎鲁特旗| 长垣县| 扶绥县| 巴青县| 桂林市| 惠州市| 黄山市| 分宜县| 鸡东县| 博湖县| 蛟河市| 错那县| 黎川县| 乌拉特前旗| 太仆寺旗| 米脂县| 兴义市| 富裕县| 宁阳县| 新津县| 道真| 磐石市| 喀喇|