sql计算经纬度得出最近距离的公式
//根据经纬度计算两点距离mappoint //数据库已有字段,商家经纬度 实例:113.272148,23.147299$lon = ""; //用户的 经度 113.30075$lat = ""; //用户的 纬度 23.146901substring_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