【发布时间】:2018-06-04 18:19:56
【问题描述】:
我需要获取纬度和经度位置之间的距离, mysql 查询工作没有错误,但它返回错误的距离值
当我输入与数据库中相同的纬度和经度时,它给出的距离为“2590.4238273460855”而不是零,我不知道这有什么问题
mysql查询如下 这里的纬度和经度是我的表格列名
$sql = "SELECT id,(3956 * 2 * ASIN(SQRT( POWER(SIN(( $latitude - latitude) * pi()/180 / 2), 2) +COS( $latitude * pi()/180) * COS(latitude * pi()/180) * POWER(SIN(( $longitude - longitude ) * pi()/180 / 2), 2) ))) as distance
from table_name ORDER BY distance limit 100";
谁能帮帮我..
【问题讨论】:
-
当我运行这个查询时,我得到一个非常接近零的数字(由于转换为弧度时不精确,所以不完全为零)。您还可以显示设置变量并执行查询的代码吗?
-
请告诉我们导致 2590 的 $lat, $lng, lat, lng 的值...
标签: php mysql location latitude-longitude