mysql経緯度に基づいて最近距離を並べ替える

771 ワード

SELECT title,address,(6371*acos(cos( radians(39.926588))*cos(radians(ln))*cos(radians(la)-radians(116.477051))+ sin(radians(39.926588))*sin(radians(ln)))) AS distance ,la ,ln from sh_publish  ORDER BY distance ASC

         

       :
MySQL:
  :  -sh_user    -latitude     longitude                 :22.72114,114.2308
SELECT    
      s.*,(    
        6371 * acos (    
          cos ( radians(22.72114) )    
          * cos( radians( s.latitude ) )    
          * cos( radians( s.longitude ) - radians(114.2308) )    
          + sin ( radians(22.72114) )    
          * sin( radians( s.latitude ) )    
        )    
      ) AS distance    
    FROM sh_user u     
    ORDER BY distance   
    LIMIT 0 , 2000;

   LIMIT 0 , 2000----