首页 > 解决方案 > 如果值返回为无穷大,则默认为 0 - SQL 报告

问题描述

我正在创建一个 SQL 报告,其中一列是计算出库存托盘数量的计算。

问题是某些字段可能设置为 0,这使我除以 0 错误并给出 Infinity 的结果。我想总结确实具有结果值的行,但无穷大值阻止了这成为可能。

如果计算结果不是值,如何将值默认为 0?

我的表达如下:

=CDBL((Fields!AVAIL.Value/Fields!pack.Value)/Fields!units.Value)

标签: sql-serverreporting-servicesexpression

解决方案


试试这个。我们基本上只在两个字段都没有设置为0的情况下才进行计算

=Iif(Fields!pack.Value = 0 Or Fields!units.Value = 0,0,CDBL((Fields!AVAIL.Value/Fields!pack.Value)/Fields!units.Value))

推荐阅读