2

我对 GIS 有点陌生,我想在我的 DB (mySQL) 中搜索 k 最近邻居。据我了解,选项是:1)使用 Haverstine 公式 - 但它将在整个数据库上运行,我知道我可以向 lat 和 long 添加索引以改进事情.. 2)使用此处描述的扩展区域:http ://blogs.msdn.com/b/isaac/archive/2008/10/23/nearest-neighbors.aspx 3) 使用此处描述的边界框:http ://code.google.com/intl/iw-IL /appengine/articles/geosearch.html 4) 使用点和 MBRContains 函数,如下所述: Fastest Way to Find Distance Between Two Lat/Long Points

我想知道每种方式的优缺点是什么,哪一种(或组合)最适合获得快速且准确的结果。另外,我应该使用点和多边形还是只使用纬度/经度?我知道这个话题已经在这里讨论过不止一次,但我仍然不确定答案是什么。TNX

4

1 回答 1

0

我决定使用 MySQL (2006) 的高级顾问 Alexander Rubin 的这个灵魂,它使用 lat 和 long。它可以在这里找到: http://www.google.co.il/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cts=1331768736541&ved=0CC8QFjAA&url=http%3A%2F%2Fassets.en.oreilly。 com%2F1%2Fevent%2F2%2FGeo%2520Distance%2520Search%2520with%2520MySQL%2520Presentation.ppt&ei=nC1hT4KlD6mk0QX1uOmGBw&usg=AFQjCNF-JRRwbrOhQPim3d1wRDc2dI8HsQ&sig2=uoRdf1PMkZTNSh7Am

希望它会帮助你们中的一些人

于 2012-03-14T23:46:09.320 回答