最近的位置SQL查询在PHP


Closest Location SQL query in PHP

嘿,伙计们,我正在寻找一种方法来计算从php页面查询MYSQL数据库最近的位置。到目前为止,我在PHP中有一个函数,它使用Haversine公式来计算最近的位置,我做一个PHP函数的唯一原因只是为了理解公式本身。现在我正在寻找一种方法来查询数据库,其中将包含最近位置的纬度和纬度值。我希望通过比较我的php页面上的lat和long值与数据库中的所有lat和long值来做到这一点。我一直在看谷歌的教程。但是我真的不理解他们正在使用的sql查询。

$query = sprintf("SELECT address, name, lat, lng, ( 3959 * acos( cos( radians('%s') ) *
cos( radians( lat ) ) * cos( radians( lng ) - radians('%s') ) + sin( radians('%s') ) * 
sin( radians( lat ) ) ) ) AS distance FROM markers HAVING distance < '%s' 
ORDER BY distance LIMIT 0 , 20",

查询中的距离是什么意思?因为我自己试过使用这个查询,它没有返回任何结果。如果有人能帮我理解这个问题,我将非常感激,谢谢。

问题是,我有"字符字段名,例如cos(radians('lat')应该是cos(radians(lat)