我有一个酒店的数据库与地址,也POI的纬度和经度。
我想搜索半径为5 km 10 km的酒店周围的POI。该怎么做呢?
谢谢
发布于 2011-06-20 17:58:54
有一个(相当广泛的)教程可以在JavaScript中创建一个"Store Locator“类型的页面,Google Geo API团队可以在这里找到它:
http://code.google.com/apis/maps/articles/phpsqlsearch.html
如果您看到“搜索地理编码附近”部分,您可以将其修改为酒店的设置地理编码。或者,您可以只为它提供一个用于酒店名称的字符串。这真的取决于你想让你的搜索如何工作。
这对你有帮助吗?
另外,如果你想优化你自己的Mysql Haversine Procedure (radius)using a center point 版本,我还在这里发布了关于创建一个超级高效的版本的建议
发布于 2016-07-28 03:20:34
SELECT
*,
ACOS( SIN( RADIANS( `lat` ) ) * SIN( RADIANS( $lat ) ) + COS( RADIANS( `lat` ) )
* COS( RADIANS( $lat )) * COS( RADIANS( `lon` ) - RADIANS( $long )) ) * 6380 AS `distance`
FROM `places`
WHERE
ACOS( SIN( RADIANS( `lat` ) ) * SIN( RADIANS( $lat ) ) + COS( RADIANS( `lat` ) )
* COS( RADIANS( $lat )) * COS( RADIANS( `lon` ) - RADIANS( $long )) ) * 6380 < 10
ORDER BY `distance`10是以公里为单位的半径
$lat和$long是圆心或圆
lat和lon是属性,如果您的表
https://stackoverflow.com/questions/6409265
复制相似问题