繁体   English   中英

纬度和经度MySQL字段类型

[英]Latitude and Longitude MySQL Field Type

我需要存储在MySQL数据库中的大量纬度和经度。 我正在阅读有关要使用的字段类型的冲突建议。

数据的示例是...

Lat        |  Long
------------------------
53.670827  |  -1.093991
50.894701  |  0.061115
52.288213  |  -1.822060

根据Google的这份文件 ,他们建议将栏位类型设为FLOAT(10,6)

我已经尝试过了,输入57.098554时将其更改为57.098553 ,但是输入-2.252504可以正确存储。

作为替代方案,我计划使用以下...

Lat DECIMAL(10, 8)
Long DECIMAL(11,8)

有人有更好的建议吗?我对DECIMAL设置是否正确?

都错了! 您链接到的google文档是从2009开始的,mysql从那以后已经走了很长一段路。 尤其是JSON的引入,并等待它.... mysql 5.7中的空间数据类型

自介绍以来,存储位置的正确方法是将其作为POINT字段。 这也为您打开了一系列空间数据功能。 否则,您需要手工编写某些东西,就像开发人员在引入它之前必须要做的那样。

内置的地理空间功能可以使用索引,而自制功能通常由于无法正确使用索引而速度较慢。

您可以使用FLOAT( 10, 6 )

查看谷歌地图解决方案: 在Google Maps上创建商店定位器

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM