背景:由于项目中用户有一个需求,就是对经纬度这种比较长的数据需要保留5位小数,不足5位小数补0.
比如说:【114.140799999999999 ,30.381399999999999】这一组经纬度需要转化为【114.14079,30.38139】 or 【114.1407,30.381】这一组经纬度需要转化为【114.14070,30.38100】。
像这种放在C#或者js中已经实现了。

下面介绍在sql中如何实现:
实现思路:将目标经纬度通过CAST函数转化为字符串,然后根据你需要保留的小数位拼接多少个‘0’。在通过LEFT函数截取8-9位即可。
select LEFT(CAST((123.32888888823123412) AS nvarchar(50))+'00000',9)

select LEFT(CAST((123.32) AS nvarchar(50))+'00000',9)

文章介绍了在SQL中处理经纬度数据,按照需求保留5位小数并补零的方法。通过使用CAST函数将数值转化为字符串,然后拼接所需数量的0,再利用LEFT函数截取指定长度,实现数据格式的转换。
2301

被折叠的 条评论
为什么被折叠?



