使用MySQL空间数据获取Google Maps上的最近地点

使用MySQL空间数据获取Google Maps上的最近地点,第1张

使用MySQL空间数据获取Google Maps上的最近地点

您只需要使用以下查询

例如,您输入的经度纬度分别为37和-122(以度为单位)。您想搜索距当前给定纬度和经度25英里以内的用户。

SELECt item1, item2,     ( 3959 * acos( cos( radians(37) )         * cos( radians( lat ) )         * cos( radians( lng )  - radians(-122) )         + sin( radians(37) )         * sin( radians( lat ) )       )   ) AS distance FROM geopreTable HAVINg distance < 25 ORDER BY distance LIMIT 0 , 20;

如果要以kms为单位搜索距离,则在上面的查询中将3959替换为6371。

您也可以这样做:

  1. 选择所有经度和纬度

  2. 然后计算每个记录的距离。

  3. 可以使用多个重定向来完成上述过程。

为了优化查询,您可以使用存储过程。

而这也可以帮助你。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5065288.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存