在sybase中设置十进制前后的固定数量的零

时间:2017-02-09 20:21:37

标签: sql sybase

我需要根据我从另一个表获取的值的条件来设置表中字段的值。该字段的数据类型为float。要求是我需要在小数点前有2位数,后面有4位数。因此,如果值为9.45,我需要将其设置为09.4500。我想知道什么是最好的方法来做到这一点。我应该将值转换为varchar然后再做substring吗?或者这可以设定精度吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

首先,不要将这样的值存储为浮点数。您已经非常仔细地描述了decimal(6, 4) / numeric(6, 4)数据类型。

如果您将其设为floatdecimal,则可以使用str()然后填充到右侧:

select right('000000' + str(9.45, 6, 4), 7)