百分比后面多了很多个0可以怎么处理呢?

如图所示

image.png

请问数值是上面那个,但是用如下代码转成百分比的时候,部分百分数不是保留2位小数,请问这是什么原因呢?有没有大佬帮忙解决一下,辛苦了,谢谢~

case when t3.main_machine_prodt_schedule_qty_cumulative = 0 then '0.0%' else (concat(round((t3.main_machine_prodt_schedule_qty_cumulative/t3.prodt_schedule_qty_cumulative),2)*100,'%')) end as cumulative_ratio_percent--累计占比百分比

FineReport FineBI 用户60421570 发布于 2023-2-6 15:35 (编辑于 2023-2-6 15:36)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-2-6 15:39(编辑于 2023-2-6 16:02)

case when t3.main_machine_prodt_schedule_qty_cumulative = 0 then '0.0%' else (concat(round(((t3.main_machine_prodt_schedule_qty_cumulative*1.0)/t3.prodt_schedule_qty_cumulative),2)*100,'%')) end as cumulative_ratio_percent

试试

-------

case when t3.main_machine_prodt_schedule_qty_cumulative = 0 then '0.0%' else (concat(round(((t3.main_machine_prodt_schedule_qty_cumulative*100)/t3.prodt_schedule_qty_cumulative),2),'%')) end as cumulative_ratio_percent

----------

case when t3.main_machine_prodt_schedule_qty_cumulative = 0 then '0.0%' else 

(concat(convert(nvarchar(100),round((t3.main_machine_prodt_schedule_qty_cumulative/t3.prodt_schedule_qty_cumulative),2)*100)),'%')) 

end as cumulative_ratio_percent

  • 用户60421570 用户60421570(提问者) 还是不行呢 还是展示出中间很多0的情况
    2023-02-06 15:49 
  • Z4u3z1 Z4u3z1 回复 用户60421570(提问者) 修改了 提前乘以100呢
    2023-02-06 15:54 
  • 用户60421570 用户60421570(提问者) 回复 Z4u3z1 还是不行呢
    2023-02-06 16:00 
  • Z4u3z1 Z4u3z1 回复 用户60421570(提问者) 修改了 再不行 我也想不出了 囧
    2023-02-06 16:03 
最佳回答
0
用户80532932Lv4见习互助
发布于2023-2-6 16:21

case when t3.main_machine_prodt_schedule_qty_cumulative = 0 then '0.0%' else concat(round((t3.main_machine_prodt_schedule_qty_cumulative/t3.prodt_schedule_qty_cumulative)*100,2),'%') end as cumulative_ratio_percent--累计占比百分比

最佳回答
0
mind_childLv6见习互助
发布于2023-2-6 16:45

什么数据库?

  • 3关注人数
  • 650浏览人数
  • 最后回答于:2023-2-6 16:45
    请选择关闭问题的原因
    确定 取消
    返回顶部