如何在MySQL中存储纬度和经度?

时间:2010-03-03 20:40:43

标签: mysql

我正在尝试将纬度39.8162994和经度-98.5576019存储为花车,但结果却与0.00000000000-98.55760192871相似。

有什么问题?我使用float(15,11)作为数据类型。

2 个答案:

答案 0 :(得分:6)

您应该使用DECIMAL(10,7),以便能够存储带有7位小数的​​longitude值:±179.1234567FLOAT数据类型用于表示近似数值数据值,另一方面,您可能更愿意使用DECIMAL数据类型存储精确值。

答案 1 :(得分:3)

我建议您使用DECIMAL类型或将其存储为具有已知偏移的整数(例如10e-7)。

至少使用尽可能多的数字保持精度:

DECIMAL(15,12)