我正在工作的应用程序,需要找到特定产品的附近分销商。截至目前,我有当前位置的经度和纬度。除此之外,我也有所有产品经销商名单,各自的坐标。我正在运行查询,该查询给了我最近的10个位置,但是为了它彻底查看了DB中的每条记录,计算出当前位置和特定位置之间的距离。它需要太多时间。还有其他的选择吗?需要寻找附近的位置帮助
回答
您是否可以通过创建最大和最小长度和纬度(例如距当前位置10英里内)来首先缩小数据集的范围。然后,您可以通过lat> minLat查询数据集,然后通过计算最小子集上的实际距离(如果您需要),然后按照您的建议对它们进行排序。
您可以通过在您的位置周围创建矩形缓冲区来筛选位置列表,以过滤附近的位置。
SELECT * FROM表t WHERE t.lat <(LAT + BUFF)AND t.long <(长+ BUFF)AND t.lat>(LAT-BUFF)AND t.long>(长的buff)
纬度,经度 - 您的位置,浅黄色 - 一定的价值,你可以调节,以满足您的应用需求(如100 英尺,1英里等)
然后你就可以在返回的记录运行的距离计算。
为避免计算每个位置的距离,您可以使用最大左上角长度(上10英里和后10英里)和最大右下角长(10英寸)创建一个纬度长的方块(可以说为10英里)英里和10英里右)。然后,您的查询将在该框中使用> =和< =找到经纬度,然后计算每个距离以滤除超过10英里的角落中的位置。
另一个选项是查看spatial indexing for SQLite。
Spatialite iOS http://stackoverflow.com/questions/4793970/how-to-compile-spatialite-for-ios – Joe
- 1. 需要帮助找出点的位置
- 2. 寻找附近的位置或地标
- 3. 查找附近的位置
- 4. 在Android上需要GPS位置帮助
- 5. 需要一些寻路的帮助!
- 6. 需要CSS定位帮助
- 7. 需要CSS定位帮助
- 8. 需要帮助定位
- 9. 需要帮助来找到android中的用户位置?
- 10. 寻找附近的地点
- 11. HTML5;寻找地理位置附近的东西
- 12. 如何寻找用户在facebook位置附近的朋友API
- 13. C++ - 寻找“帮助”
- 14. 需要寻找复发关系的帮助
- 15. 需要在GridView中寻找元素的帮助Android
- 16. 需要帮助寻找一个特定的Magento Javascript文件
- 17. 需要帮助寻找例外“javax.xml.bind.UnmarshalException - 带链接的异常:”
- 18. 需要帮助寻找施氮量的Excel范围
- 19. 需要帮助配置phabricator
- 20. 需要帮助配置ImageMagick
- 21. 需要帮助设置RoboSpock
- 22. 需要帮助设置htaccess
- 23. 需要帮助设置SMTP
- 24. 附近位置
- 25. 需要帮助附加Javascript onclick
- 26. EntityFramework附加和更新。需要帮助
- 27. 的preg_match帮助寻找数
- 28. 需要帮助寻找什么阻止文本选择脚本
- 29. 需要帮助寻找与冒号记事本++
- 30. 需要帮助使用javascript正则表达式寻找加号
看起来像德米特里也打败了我吧。 –