/*The incoming parameters are latitude latitude longitude ASC ascending order from near to far DESC descending order from far to near * /
SELECT
*,
ROUND(
6378.138 * 2 * ASIN(
SQRT(
POW(
SIN(
(
40.0497810000 * PI() / 180 - lat * PI() / 180
) / 2
),
2
) + COS(40.0497810000 * PI() / 180) * COS(lat * PI() / 180) * POW(
SIN(
(
116.3424590000 * PI() / 180 - lon * PI() / 180
) / 2
),
2
)
)
) * 1000
) AS juli
FROM
customer
ORDER BY
juli ASC
lat, lonFor latitude and longitude
phpCode
//The distance A ($lat1, $lng1) and B ($lat2, $lng2) are calculated according to latitude and longitude. function getDistance($lat1,$lng1,$lat2,$lng2) { //Radius of the earth $R = 6378137; //Turning angle to Fox degree $radLat1 = deg2rad($lat1); $radLat2 = deg2rad($lat2); $radLng1 = deg2rad($lng1); $radLng2 = deg2rad($lng2); //Result $s = acos(cos($radLat1)*cos($radLat2)*cos($radLng1-$radLng2)+sin($radLat1)*sin($radLat2))*$R; //accuracy $s = round($s* 10000)/10000; return round($s); }