我有这个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
前三个是两个完全独立的城市之间的假设距离
如果有人能指出我写这些内容的任何问题,我会很感激。