select * from (
SELECT *,
(
6371 * acos (
cos ( radians(#{lat}) )
* cos( radians(lat) )
* cos( radians(lng) - radians(#{lng}) )
+ sin ( radians(#{lat}) )
* sin( radians(lat) )
)
) AS distance
FROM sys_branch where level = 2 and lat is not null and lng is not null
)tmp where tmp.distance < 1
MySQL获取经纬度
注意:在不同版本中,可能会出现方法被弃用的情况,下面分别从两个版本说明
8.0以下
SELECT
y(lng_lat) lng,x(lng_lat)
FROM
`address`
8.0及以上
SELECT
ST_Astext(lng_lat),
ST_Y(lng_lat) 经度,
ST_X(lng_lat) 纬度
FROM
address