postgresql中如何存储经纬度坐标?


在使用postgresql作为数据库,开发一款LBS应用。目前经纬度均采用float8存储,但是采集来的坐标比float8要长,以至于数据库中的值和真实值有一定的差异。

在地图上,这种差异直接导致目标便宜。请问在postgresql中改采用哪种数据类型来存储经纬度坐标比较好?

谢谢

开发 PostgreSQL 经纬度坐标 lbs 经纬度

早上肛裂的UU 9 years, 11 months ago

一般情况下,float8的精确度足够处理经纬度坐标了。 你也可以尝试使用point类型 - 即(x,y) 对应 lat / long,但是point实际就是两个float8在一起。

至于你提到的情况,有可能是在数据进入数据库之前,被丢弃掉了一部分值,有可能是程序本身的问题,跟数据库无关。

希望对你有帮助。

阿媽系女人 answered 9 years, 11 months ago

经纬度数据如对精度的要求高的话,建议用double类型来存储,虽然开销大很多,但是后续麻烦少。个人作图的经验

五星宝具加一 answered 9 years, 11 months ago

Your Answer