Sql server 在SQL Server中将varchar转换为float时保留零

Sql server 在SQL Server中将varchar转换为float时保留零,sql-server,Sql Server,在将varchar转换为float时,有没有办法保持前面的零 在SQL Server中选择查询 declare @data varchar(100) = '000.1234'; 当我们将@data转换为float时,它只能得到0.1234 但是如何在从varchar转换为像000.1234这样的浮点之后保持完整的零[即,不修剪任何零] 有时@数据可能是“00.23” 即使如此,它也必须在转换后保留前面的零。浮点数的物理存储格式始终不保留前导零(因为它们不会影响存储的实际值) 因此,将该值保留在

在将varchar转换为float时,有没有办法保持前面的零 在SQL Server中选择查询

declare @data varchar(100) = '000.1234';
当我们将@data转换为float时,它只能得到0.1234

但是如何在从varchar转换为像000.1234这样的浮点之后保持完整的零[即,不修剪任何零]

有时
@数据可能是“00.23”


即使如此,它也必须在转换后保留前面的零。

浮点数的物理存储格式始终不保留前导零(因为它们不会影响存储的实际值)


因此,将该值保留在varchar中以保留格式,或者使用单独的字段存储格式化数字时需要的额外前导零数。

将其保留为
varchar
?前导零有什么意义?你为什么要保存它们
000.1234
0.1234
是完全相同的数字。您好,我需要select查询后的浮点数据类型。这就是为什么将varchar转换为float。保持前面零的数量是一个业务逻辑,所以我不能改变它。