我有一个PlaceID | PlaceName | Lat | Lon
作为我的数据库结构。
假设我当前的纬度和经度为
$lat = "37.331862";
$lon = "-122.029937";
我想找到半径 100 英尺内的地方。可能允许用户选择。
您可能有兴趣查看以下演示:
-
Geo/Spatial Search with MySQL http://www.scribd.com/doc/2569355/Geo-Distance-Search-with-MySQL1 by Alexander Rubin http://www.arubin.org/blog/presentations/
作者描述了如何使用半正矢公式 http://en.wikipedia.org/wiki/Haversine_formula在 MySQL 中按邻近度排序并将搜索限制在定义的范围内。他还描述了如何使用纬度和经度列上的传统索引来避免此类查询的全表扫描。
1 PDF Version http://www.arubin.org/files/geo_search.pdf
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)