如何在 google 地图中查找某个点 5 公里范围内的所有位置?

How is finding all locations in google maps within 5km of a point implemented?

想象一下大量感兴趣的地点。给定地图上的任何一点,我们想列出距离它 5 公里以内的所有此类位置。

这似乎是一个相当简单的想法,我希望已经有一个深思熟虑的解决方案。但是我不知道如何Google。

如何将位置数据存储在数据库中以加快搜索速度。我假设 SQL 数据库(基于关系表格数据)将不起作用,因为我没有看到使用 SQL 的表格性质进一步过滤掉大部分位置的明显方法距离不超过 5 公里,以保持每次查询的速度。

也许像 Postgres 这样的数据库有某种空间扩展,可以让我的要求快速完成。如果是的话,这样的事情是如何实现的。

如果像我这样从头开始为空间查询实现数据库,将如何实现它们

postgres 的空间扩展名为 PostGIS。它有特殊的数据类型来表示地图和位置。它还具有特殊索引以加快对空间数据的查询(GINGiST 索引)。

这是 PostGIS 常见问题列表。它有你的问题的答案。 http://postgis.net/docs/manual-2.1/PostGIS_FAQ.html