select *
from b t1
where ((:x - t1.x1) (:x - t1.x1) + (:y - t1.y1) (:y - t1.y1)) =
(select min((:x - t2.x1) (:x - t2.x1) + (:y - t2.y1) (:y - t2.y1)) as long
from b t2);
:x , :y 为已知的a坐标,用的是勾股定律
select *,
(2 * 6378.137 *
ASIN(SQRT(POW(SIN(PI() * (111.86141967773438 - lat) / 360), 2) +
COS(PI() * 33.07078170776367 / 180) *
COS(lat * PI() / 180) *
POW(SIN(PI() * (33.07078170776367 - lng) / 360), 2)))) as juli
from area
order by juli asc limit 0, 20
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于