现需要对用户的一些数据进行分析,每个用户都有若干条记录每条记录中有用户的一个位置,昰用经度和纬度表示的
还有一个给定的数据库,存储的是一些已知地点以及他们的经纬度内有N多条的数据,现指定一个经纬度数据怎么高效的查询出一公里范围内的用户出来,在线等待,谢各位大侠!
计算两点距离很简单啊逻辑判断一下不就好了?
1、先判断纬度戓经度如果两者的差的绝对值超出1公里就排除,筛选出1公里内的;
2、根据1的结果计算两点距离
这个方法不可行哦,那个效率太低我的数据量非常大
本版专家分:45897
效率高不高,数据库设计才是关键
算你一千万位置记录,放在上海市区平均每平方公里就是几千。
方法1的圆外切正方形筛选绝对有效
就算上万好了,一万次距离运算能花多少时间
计算两点距离很簡单啊,逻辑判断一下不就好了
挺靠谱,感觉是最简单的判断方法了