• 获得两个地址之间的距离


    CREATE FUNCTION [dbo].[HMAT_GetDistance]
    (
    @LatBegin REAL
    , @LngBegin REAL
    , @LatEnd REAL
    , @LngEnd REAL
    )
    RETURNS FLOAT
    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

  • 相关阅读:
    apache 错误日志
    搭建服务器
    vim配置
    临时表增加查询速度
    如何清空$_POST or $_GET
    hdu 2084
    快速幂
    zjut 1176
    rwkj 1091
    zjut 1090 --------同余定理的应用
  • 原文地址:https://www.cnblogs.com/ctriphire/p/2914503.html
Copyright © 2020-2023  润新知