标签: mysql
我正在尝试将纬度39.8162994和经度-98.5576019存储为花车,但结果却与0.00000000000和-98.55760192871相似。
39.8162994
-98.5576019
0.00000000000
-98.55760192871
有什么问题?我使用float(15,11)作为数据类型。
float(15,11)
答案 0 :(得分:6)
您应该使用DECIMAL(10,7),以便能够存储带有7位小数的longitude值:±179.1234567。 FLOAT数据类型用于表示近似数值数据值,另一方面,您可能更愿意使用DECIMAL数据类型存储精确值。
DECIMAL(10,7)
±179.1234567
FLOAT
DECIMAL
答案 1 :(得分:3)
我建议您使用DECIMAL类型或将其存储为具有已知偏移的整数(例如10e-7)。
10e-7
至少使用尽可能多的数字保持精度:
DECIMAL(15,12)