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

Sql 在sybase中设置十进制前后的固定零数,sql,sybase,Sql,Sybase,我需要设置表中某个字段的值,这取决于我从另一个表中获取其值的条件。此字段的数据类型为float。要求是小数点前2位,小数点后4位。所以如果一个值是9.45,我需要将它设置为09.4500。我想知道做这件事最好的方法是什么。我应该将该值转换为varchar,然后再执行substring吗?或者可以通过设置精度来实现这一点 谢谢 首先,不要将此类值存储为浮点值。您已经非常详细地描述了十进制(6,4)/数字(6,4)数据类型 如果将其作为浮点或十进制,则可以使用str(),然后向右填充: select

我需要设置表中某个字段的值,这取决于我从另一个表中获取其值的条件。此字段的数据类型为float。要求是小数点前2位,小数点后4位。所以如果一个值是9.45,我需要将它设置为09.4500。我想知道做这件事最好的方法是什么。我应该将该值转换为varchar,然后再执行substring吗?或者可以通过设置精度来实现这一点


谢谢

首先,不要将此类值存储为浮点值。您已经非常详细地描述了
十进制(6,4)
/
数字(6,4)
数据类型

如果将其作为
浮点
十进制
,则可以使用
str()
,然后向右填充:

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