以下是我用于在给定的lat / lng坐标的给定距离内定位教区的SQL:
SELECT record_id as parish_id, parish, church, ( 3959 * acos( cos( radians(#sLat#) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(#sLng#) ) + sin( radians(#sLat#) ) * sin( radians( lat ) ) ) ) AS distance
FROM parishes
HAVING distance < #arguments.dist#
ORDER BY distance
LIMIT 0 , 20;
如何更改此查询以仅获得给定坐标的非常CLOSEST教区?
答案 0 :(得分:2)
您目前使用以下声明限制为20:
LIMIT 0,20
您可以将此更改为:
LIMIT 1
它将是最接近的,因为您按distance
排序。