SQL距离计算错误

时间:2014-12-09 16:44:31

标签: sql geolocation

我有这个sql语句用于计算经度和纬度的距​​离:

    SELECT post_id, (((acos(sin(('52.4778044' *pi()/180)) * 
sin((lat *pi()/180))+cos(('52.4778044' *pi()/180)) * 
cos((lat*pi()/180)) * 
cos((('-1.9103284' - lng)*pi()/180)))) 
*180/pi())*60*1.1515) 
as distance FROM wp_offers_latlng ORDER BY distance

虽然这主要是有效的,但在少数情况下它似乎会抛出比它们应该短得多的距离值(它似乎特别存在距离大约30-40英里的特殊问题。英里)。

一些典型的回应:

15168
0.402004443304248

15164
0.402004443304248

15148
0.402004443304248

12972
0.445279823288741

前三个是两个完全独立的城市之间的假设距离

如果有人能指出我写这些内容的任何问题,我会很感激。

0 个答案:

没有答案