mysql sql 根据经纬度查询附近的门店商家,并按距离进行排序。

技术 · 03-18 · 262 人浏览
SELECT  
  *,(  
    6371 * acos (  
      cos ( radians( 34.21702164242081 ) )  
      * cos( radians( latitude ) )  
      * cos( radians( longitude ) - radians( 113.76823781349185 ) )  
      + sin ( radians( 34.21702164242081 ) )  
      * sin( radians( latitude ) )  
    )  
  ) AS distance  //距离
FROM merchant
HAVING distance < 0.5  //筛选距离小于0.5km的商家(可不写),如果没查到数据就是没有小于0.5km的商家
ORDER BY distance  //根据距离远近来排序 默认升序 (可不写)
LIMIT 0 , 10;  //显示前10条数据(可不写)
豫ICP备17047052号-1