sql-server - 如果值返回为无穷大,则默认为 0 - SQL 报告
问题描述
我正在创建一个 SQL 报告,其中一列是计算出库存托盘数量的计算。
问题是某些字段可能设置为 0,这使我除以 0 错误并给出 Infinity 的结果。我想总结确实具有结果值的行,但无穷大值阻止了这成为可能。
如果计算结果不是值,如何将值默认为 0?
我的表达如下:
=CDBL((Fields!AVAIL.Value/Fields!pack.Value)/Fields!units.Value)
解决方案
试试这个。我们基本上只在两个字段都没有设置为0的情况下才进行计算
=Iif(Fields!pack.Value = 0 Or Fields!units.Value = 0,0,CDBL((Fields!AVAIL.Value/Fields!pack.Value)/Fields!units.Value))
推荐阅读
- javascript - net::ERR_FILE_NOT_FOUND 但略有不同
- reactjs - 我的终端在运行 yarn start 命令时显示 package.json not found 的错误我该怎么办?
- c++ - 在常量表达式中访问联合成员时出错
- c# - 如果可以在 c# 的“case”中放置多个值
- c# - 按键后重复一行代码
- cmake - 如何在 CMake 中构建和添加依赖库
- java - 使用 nimbus-jose 和 Java 6 的 ECDH + JWE 加密
- c++ - 引用变量超出范围
- c - 无法根据用户字符串动态分配内存;realloc():下一个大小无效
- sql - 如何根据其他行有条件地选择行