当前位置: 首页 > 面试题库 >

将0值放在小数位

屠杰
2023-03-14
问题内容

我想问是否有人知道查询将十进制的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,


问题答案:

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

例如

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

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



 类似资料:
  • 为什么下面的返回为假?

  • 我使用的是一个简单的客户端 普罗米修斯 版本 0.6.0 我有一组以这种方式定义的计数器 我将这个类注入到我需要它的地方,然后调用addCdProductVicessCreated()等方法,但对于没有值的指标,当我抓取它们时,它们看起来是空的,例如: 我的问题是如何初始化值为0的计数器,以便即使未调用inc方法也能显示出来

  • 如有任何帮助,不胜感激,谢谢。

  • 我有一个BigDecimal数字,我只考虑它的2个小数点,所以我用以下方法截断它: 我尝试使用格式化程序Formatter.format但我总是得到2个小数位数。 我怎么能这么做?也许正在处理bd.toPlainString()中的字符串?

  • 我有一个包含一些价格值的数据帧。不,我想有一个或最好的情况下有两个数据框,每篇文章的最大值和最小值没有 0 个值。 我用DT这样做(对于maxValue,一切都很完美): 但minValue Df显示0值。我也尝试过: 但是在这里我不知道如何使用 在最好的情况下,我希望每个产品的最大值和最小值都有dfs。

  • 问题内容: 我正在尝试将双精度数格式化为精确到小数点后2位(如果有分数),然后使用DecimalFormat将其截断 因此,我想取得下一个结果: 变体#1 变体#2 有什么想法可以选择我的情况吗? 问题答案: 我达到的唯一解决方案是使用 if语句在这里提到 测试中 如果有人知道更优雅的方式,请分享!