SELECT * , (POWER(MOD(ABS(substring_index(`loglat`, ',' ,1 ) - '112.991664'),360),2) + POWER(ABS(substring_index( `loglat` , ',' ,-1 ) - '28.208148'),2)) AS distance FROM `clo_business_consumer` where loglat is not null ORDER BY distance limit 10
	
subindex 就截取字符 串,因为 这里经纬度放一个字段 了,用‘,’隔开的
	
	
显示 距离代码 .
	
	<?php
define('EARTH_RADIUS', 6378.137) ;
function rad($d = null){
    return $d * pi() / 180.0;
}
function GetDistance($lat1,$lng1,$lat2,$lng2){
    $radLat1 = rad($lat1);
    $radLat2 = rad($lat2);
    $a = $radLat1 - $radLat2;
    $b = rad($lng1) - rad($lng2);
    $s = 2 * asin(sqrt(pow(sin($a/2),2) +cos($radLat1)*cos($radLat2)*pow(sin($b/2),2)));
    $s = $s * EARTH_RADIUS;
    $s = round($s * 10000) / 10000;
    return $s;
}
$lng = 112.911664;
$lat = 28.208148;
$lng2 = 112.991664;
$lat2 = 28.228148;
$res =  GetDistance($lat,$lng,$lat2,$lng2);
var_dump($res);
	
