database - 在数据库中存储地理位置的最有效方式

标签 database geolocation geocoding

我知道 postgres 有一个用于存储地理坐标的数据类型。但我正在寻找与 RDBMS 无关的解决方案。目前我在 MySQL 中使用 Decimal(25,20)。稍后我可能会使用此数据根据距给定位置的给定距离查找这些位置。哪种方法是存储此类数据的最佳方法?

最佳答案

另一个好的技术是将值乘以一个常数并将它们存储为整数值。仅使用整数也有助于加快计算速度。

除非您非常需要精度,否则您实际上只需要在小数点后存储 5 个以上的值。

Latitude Longitude Data Storage Specification给出了一个显示精度与小数位的图表。

# decmal places, example, precision
5    51.22135    ± 0.8 m
6   50.895132   ± 0.08 m

7 等于 8 毫米,或大约 0.314 英寸。

关于database - 在数据库中存储地理位置的最有效方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/293997/

相关文章:

MySQL - 提高多国性能

swift - 如何使用 sqlite 将我的图像保存到数据库中?

api - Google/Yahoo 替代地理编码?

android - 我在哪里? - 获取国家

python - 获取一个城市的人口名称

php - 是否可以将 4 个字段放在一起用作连接两个表的键?

database - 在 DataGrip 中将 SQL 文件作为控制台打开

geolocation - 如何在 React Native Expo 中使用纬度和经度计算两点之间的距离?

web-services - Google Maps API V3 地理编码 API 不返回状态

database - 缓存地理编码结果的最佳方法