Cognos:在多个列中使用rank()来排序条形图

时间:2016-10-17 20:53:22

标签: cognos

我有一些示例数据,如下表:

table

其中左表当前是我拥有的数据,我想按年份,公司和产品订购(基于总成本)。目前,用户在提示屏幕上选择年份和公司,我试图根据每个产品的总成本,获得每个公司每年前十名的名单。我希望我的数据在右边的表格中排序,跟踪计费代码区域,但不按它排序。我已经能够编写一个SQL代码,它将使用group by对其进行排序,但我无法添加计费代码区域。我需要帐单代码区域以条形图显示信息。 我已经尝试在Cognos中使用rank函数,但我只能在一列中使用它。我也尝试将3列连接在一起,但也没有运气。有没有办法对3列使用rank()?

1 个答案:

答案 0 :(得分:0)

看起来你有两个不同的任务:

  1. 计算前5名 AFAIR你可以像这样使用rank():

    rank([total_cost] for [Country],[Year],[Product])
    
  2. 列出所有结算区号。这不是那么简单。它没有特殊功能(对它们感到羞耻)。因此,您可以使用数据库的功能为其编写自定义查询,或者更好的是,使用转发器对象进行伪连接,或者在“计费区域代码”字段中插入具有主 - 详细信息关系的交叉表。

相关问题