mysql问题

selectidfromtestjuliwherelat>30.891493-1andlat<30.891493+1andlng>103.590427-1andlng<1... select id from testjuli where
lat > 30.891493-1 and
lat < 30.891493+1 and
lng > 103.590427-1 and
lng < 103.590427+1
order by ACOS(SIN((30.891493 * 3.1415) / 180 ) *SIN((lat * 3.1415) / 180 ) +COS((30.891493 * 3.1415) / 180 ) * COS((lat * 3.1415) / 180 ) *COS((103.590427* 3.1415) / 180 - (lng * 3.1415) / 180 ) ) * 6380 asc limit 10;
这个是经纬度计算把查询到的距离最近的数据id列出来, 我想要获得这个计算距离的结果,怎么写语句啊 我是小白 帮我写一下吧
还有就是我这个是做定位附近的人的,就是一定范围内的人,还有之间的距离,mysql里面怎么设置计算范围内的人呢 大神帮帮忙吧
展开
 我来答
6fone
2015-09-01 · TA获得超过804个赞
知道小有建树答主
回答量:631
采纳率:33%
帮助的人:540万
展开全部

把计算的距离放到select里面就可以了:

select id, ACOS(SIN((30.891493 * 3.1415) / 180 ) *SIN((lat * 3.1415) / 180 ) +COS((30.891493 * 3.1415) / 180 ) * COS((lat * 3.1415) / 180 ) *COS((103.590427* 3.1415) / 180 - (lng * 3.1415) / 180 ) ) * 6380 as distance from testjuli where
lat > 30.891493-1 and
lat < 30.891493+1 and
lng > 103.590427-1 and
lng < 103.590427+1
order by distance  asc limit 10;

至于“设置计算范围内的人”,没看懂啥意思,上面选择出来的id不就是对应人的id 吗

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式