1

我正在尝试创建一个 mysql 函数以计算 2 个地理点之间的距离(以米为单位)。

这就是我到目前为止所拥有的(来自谷歌的东西的组合):

CREATE DEFINER=`root`@`server.asafnevo.co.il` FUNCTION `getDistance`(
    firstLong float(10,6),
    firstLat float(10,6),
    secondLong float(10,6),
    secondLat float(10,6)
) RETURNS int(11)
BEGIN
RETURN abs((((acos(sin((firstLat*pi()/180)) * 
            sin((secondLat*pi()/180))+cos((firstLat*pi()/180)) * 
            cos((secondLat*pi()/180)) * cos(((firstLong-secondLong)* 
            pi()/180))))*180/pi())*60*1.1515
        )) * 1.6093 * 1000;
END

这个问题是它并不总是有效的,我得到距离为 0 的点之间的距离..

知道怎么做吗?

4

0 回答 0