【问题标题】:Cognos Analytics aggregate for multiple conditionsCognos Analytics 聚合多个条件
【发布时间】:2021-01-26 04:13:19
【问题描述】:

我目前正在尝试在 Cognos Analytics 报表构建器中创建一个数据项表达式来聚合一些数据。我是在 Cognos 中构建表达式的新手,因为通常我会导出数据并单独使用它,但此报告将被安排运行并且需要已经在列表中进行汇总。

我正在使用的关系包含用户名、数量和可以为空的日期字段。我想通过用户名对日期字段具有非空值的元组中的数量求和,但我正在努力解决如何在正常的 aggregate([field1] for [field2]) 结构中实现这一点?

total([Quantity] for [Username] and [Date])total([Quantity] for [Username] and isnull([Date],0)) 我都试过了,它们都会出错。

如果我很愚蠢,请原谅我,并提前感谢您提供的任何帮助!

编辑:正如 Rubrix 所建议的,用逗号代替“and”可以工作(不知道为什么我还没有尝试过),但我也得到了一个空值的聚合。将日期指定在一个范围内也无法消除聚合的空值。

我试过的表达方式是:

total([Quantity] for [Sac Create User], [Stock Corr Date] between _first_of_month(_add_months(current_date, -1)) and _last_of_month(_add_months(current_date,-1)))

total([Quantity] for [Sac Create User], length([Stock Corr Date])>0)

两者仍然为空值创建聚合。如果有人对如何删除这些而无需单独查询和加入有任何建议,将不胜感激!

谢谢

【问题讨论】:

    标签: aggregate cognos cognos-11


    【解决方案1】:

    尝试使用“,”而不是“和” 或者 总计([用户名]的[数量],当[日期]为空时为0,否则为[日期]结束)

    【讨论】:

    • 逗号而不是“and”可以工作(不知道为什么我不尝试那个!)但会为每个唯一日期提供单独的摘要(如预期的那样,不是问题),但也是空值的聚合我正在努力摆脱。
    • 刚刚按照您的建议再次尝试使用大小写并使用`total(case when [Date] is null then 0 else [Quantity] end for [Username])`工作没有错误。谢谢
    猜你喜欢
    • 2022-08-15
    • 1970-01-01
    • 2020-10-02
    • 2014-06-08
    • 2015-08-17
    • 2014-12-12
    • 1970-01-01
    • 1970-01-01
    • 2022-11-29
    相关资源
    最近更新 更多