较低粒度的查询计算

时间:2015-11-05 22:08:47

标签: report aggregation cognos

所以我有一份报告显示。产品,帐户类型,帐户等级,余额,存款数量。

我的问题是我需要根据余额将层级应用于个人帐户。因此,如果您的帐户小于99,那么'TIER 1',100-199然后'TIER 2'和>然后是'TIER 3'。这个问题是需要总结的层。因此,逻辑需要以帐户粒度为基础,然后只显示产品,帐户类型和帐户层的不同组合。余额也需要是该组中每个人的总和。

示例:

    PRODUCT | TYPE | TIER | BALANCE | # OF DEPOSITS
       A    |  1   |  T1  | $95,000 |       4
       A    |  1   |  T2  | $80,000 |      10
       A    |  1   |  T3  |$100,000 |       2
       A    |  2   |  T1  | $50,000 |      45
       A    |  2   |  T2  | $70,000 |      13
       A    |  2   |  T3  |$250,000 |     100
       B    |  1   |  T1  | $65,000 |      45
       B    |  1   |  T2  | $15,000 |      25
       etc...

我希望这至少能说明我想用这份报告完成的工作。 请随时提出问题以获得更多说明。

提前谢谢 -

编辑:这是我目前得到的输出。

  PRODUCT | TYPE | TIER | BALANCE | # OF DEPOSITS
       A    |  1   |  T1  | $1MIL   |      100
       A    |  2   |  T1  | $1.5MIL |      520
       A    |  3   |  T6  | $2MIL   |      650

2 个答案:

答案 0 :(得分:0)

我假设您的“Tier”列是由您生成的,而不是来自数据源。

[层]

CAST 
WHEN [Balance] < 99 THEN 'Tier1'
WHEN [Balance] between 100 and 199 THEN 'Tier2' 
WHEN [Balance] > 200 THEN 'Tier3'
END

[总余额]

total([Balance] for [Product],[Type],[Tier])

将[Total Balance] Aggregate Function属性设置为'Calculated'。

答案 1 :(得分:0)

如果我正确理解您的问题,汇总这三个标准的交叉表可能是最佳解决方案。

一种笨重但有效的方法可能是创建两个查询(我假设您正在使用report studio)。第一个为每个帐户分配一个层,在下一个查询中,您可以添加总聚合。