【发布时间】:2020-07-20 20:38:53
【问题描述】:
我正在尝试将版本号转换为正确的格式,因为它会附加数据库中的其他数据。我正在使用substring 提取混乱版本号的最后 6 位数字,我得到的是最后 6 位数字,但小数位比它在数据库中的格式化方式高 2 位数字.如果可能的话,我想要做的只是将小数位移动两位数。这是我的驱动版本
25.21.14.2600
我需要的是最后 6 位,右边有两个小数点
426.00
我已经为此寻找答案并尝试了我所看到的
CONVERT(DECIMAL,SUBSTRING(vc.DriverVersion0,8,6))/100
但这会将其四舍五入并移动小数位。我试过使用Replace
Replace(SUBSTRING(vc.DriverVersion0,8,6),'.','')
哪个可以删除它,但我不知道在那之后如何添加一个小数,如果我可以移动但任何一个都可以,那就太好了。任何帮助表示赞赏。
【问题讨论】:
-
请展示一些示例数据和预期结果。
-
SUBSTRING不会“移动”小数点的位置,CONVERT也不会。在这里提供minimal reproducible example 真的很有帮助。
标签: sql sql-server decimal