mysql 查询距离

第一种

SELECT longitude,latitude,(POWER(MOD(ABS(longitude - 113.770751),360),2) + POWER(ABS(latitude - 34.755465),2)) AS distance
FROM `l_shop` ORDER BY distance LIMIT 100

注意以上查询出来的distance只是一个系数,而非两点间距离,只用在排序。

第二种

SELECT id,app_name,location_city,longitude,latitude,(SQRT(POWER(MOD(ABS(longitude - 113.770751),360),2) + POWER(ABS(latitude - 34.755465),2))*80*1000) AS distance FROM `l_shop`ORDER BY distance LIMIT 100

以上查询语句可以约等于单位米m(去掉*1000则可约等于单位千米km):

你可能感兴趣的:(mysql 查询距离)