如何用 0 替换空值?

Gre*_*est 1 jasper-reports

我有一份报告,字段 A 和 B 来自我的数据库。在 select 语句中,有时 A 和 B 为空。

问题是当我要求 A - B 的组总和并且其中一条记录为空时,总和为空。

我该如何解决这个问题?

Pet*_*erg 5

在 jasper-reports 变量表达式中,您可以使用三元运算符

($F{value1}!=null?$F{value1}:0)
Run Code Online (Sandbox Code Playgroud)

这意味着 ifvalue1nullthen不同,value1否则使用0

jrxml 变量声明示例

<variable name="varWithTernary" class="java.lang.Double" calculation="Sum">
    <variableExpression><![CDATA[($F{value1}!=null?$F{value1}:0)-($F{value2}!=null?$F{value2}:0)]]></variableExpression>
</variable>
Run Code Online (Sandbox Code Playgroud)

使用这些语句,您可以随心所欲地处理null价值