sql计算经纬度得出最近距离的公式
//根据经纬度计算两点距离 mappoint //数据库已有字段,商家经纬度 实例:113.272148,23.147299 $lon = ""; //用户的 经度 113.30075 $lat = ""; //用户的 纬度 23.146901 substring_index(); //sql 函数 if('参数是否存在','参数存在执行','参数不存在执行');
大概sql浏览
SELECT a.*, IF(a.mappoint,SQRT( POW( ( substring_index(mappoint,',',-1) - {$lat}), 2) + POW( ( substring_index(mappoint,',',1) - {$lon}), 2) ), 9999999) AS distance FROM `{$db_mymps}member` {$where} ORDER BY distance ASC