sql - 如何强制 BIRT 显示零值?

标签 sql db2 birt zos

我在 BIRT 报告中有一个情况。我创建的报告坚持将某些字段显示为空白而不是零。当该字段实际上是一个不返回任何行的子选择时,就会出现这种情况。

例如,如果选择包括:

0 as p3,

然后0显示正常。但是,如果选择具有:
(select sum(other_field) from other_table where ...) as p3,

该字段显示为空白。

修改数据以便子选择存在行会导致显示一个值,即使它们的结果值为零。

所以我认为 BIRT 以某种方式将返回零行的子选择视为 NULL(它也显示为空单元格)而不是零。有谁知道如何强制 BIRT 显示实际的 0 而不是空单元格?

如果有人需要发布特定于 DBMS 的答案,我将使用 DB2/z v8,尽管即使是基于其他供应商的建议也将不胜感激。

最佳答案

当列或表达式可能返回 NULL 时,尝试使用 COALESCE 函数强制一个值。

COALESCE((select sum(other_field) from other_table where ...), 0) as p3,

关于sql - 如何强制 BIRT 显示零值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2369678/

相关文章:

java - BIRT 4.3 新 POJO 数据源有问题

php - 通过数据库搜索不起作用

mysql - SQL存储过程

sql - "Transaction Log for database is full"SQL错误

输出 XML 文件的 Java 程序 - 多个问题

tomcat - 如何跳过 BIRT 读取单元格,在 Tomcat 控制台上下载 pdf 报告时读取行消息

properties - 来自属性文件的 Birt 数据源参数

sql - 识别两个表之间差异的最快方法?

php - 我用日期选择器选择的日期输入没有插入到我的数据库中

db2 - 如何在 DB2 9.5 中计算 MD5 哈希值