ibatis sql 计算两个经纬度之间的距离 (单位m)
<isNotEmpty property="map.latlnt">
,ifnull(round(6378.138*2*asin(sqrt(pow(sin((SUBSTRING_INDEX(ENTP_LATLNG,',',-1)*pi()/180-SUBSTRING_INDEX(#map.latlnt#,',',-1)*pi()/180)/2),2)+cos(SUBSTRING_INDEX(ENTP_LATLNG,',',-1)*pi()/180)*cos(SUBSTRING_INDEX(#map.latlnt#,',',-1)*pi()/180)* pow(sin( (SUBSTRING_INDEX(ENTP_LATLNG,',',1)*pi()/180-SUBSTRING_INDEX(#map.latlnt#,',',1)*pi()/180)/2),2)))*1000),'未知')
as distance
</isNotEmpty>
<isEmpty property="map.latlnt">
,null as distance
</isEmpty>
参数
latlnt:'117.28269909,31.86694226'
ENTP_LATLNG:'117.28269909,31.96694226'