小编典典

将0值放在小数位

sql

我想问是否有人知道查询将十进制的0值删除。

例如:字段名称百分比具有以下值

百分

770.00000000000000000000、340.670000000000000000000、96.00000000000000000000、4400.56000000000000000000、109.89000000000000000000、109.00000000000000000000、37.00000000000000000000,

当前,我正在使用查询“从表中选择cast([Percent]作为小数(9,2))作为[Percent]”,将导致

结果

770.00、340.67、96.00、440.56、109.89、109.00、37.00,

我实际上想要结果:->

770,340.67,96,4400.56,109.89,109,37,


阅读 220

收藏
2021-04-14

共1个答案

小编典典

您可以结合使用DECIMAL和FLOAT。十进制先将其舍入到2个十进制位,然后浮动以删除不需要的0

例如

select cast(cast([Percent] as decimal(9,2)) AS FLOAT) as [Percent]

以340.69999999999999为例,首先将其舍入为340.70,然后将零取为340.7。与任何舍入一样,一些精度将丢失。

2021-04-14