第一种
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):
网友评论