【问题标题】:query of calculate the annual profit growth in qlikview by using text objectqlikview中使用文本对象计算年利润增长的查询
【发布时间】:2014-07-02 09:55:13
【问题描述】:

我想用一个文本对象来计算5年的年平均利润增长率。 Qlikview 似乎不支持嵌套聚合...我是 QlikView 的新手,任何人都可以帮助我吗?

Tried query:

='Annual Growth Rate  (2003-2007)  :' & avg((sum(Profit_per_Product)/sum(Total_Retail_Price))*100)

提前致谢!

【问题讨论】:

  • 您能否准确描述您的需求。如果您要添加一些内联测试数据,这将有所帮助。
  • @smartmeta 嗨,我想显示例如 5 年的平均利润率:3%、5%、3%、5%、4%。然后在我要显示的文本对象中是“年增长率(2003-2007):4 %”

标签: function qlikview


【解决方案1】:

QlikView 确实支持嵌套聚合,如果您使用 AGGR 函数,则可以满足您的要求。此函数允许您对指定的一组维度执行聚合,其最简单的形式可按如下方式使用:

=aggr(expression,dimension)

这意味着expression 会针对dimension 的每个值进行评估。例如,在您的情况下,如果您使用 sum(Profit_per_Product)/sum(Total_Retail_Price) 作为表达式,并使用包含数据 year 的维度,那么 aggr 将产生五个不同的值(一个对应于您年份的每个变化) .如果您希望取平均值,那么AVG 函数会很高兴地采用这五个值并为您提供所需的结果。

因此,您只需将表达式稍微更改为以下内容(这里我假设包含年份的维度命名为Year):

='Annual Growth Rate (2003-2007):' & num(avg(aggr(sum(Profit_per_Product)/sum(Total_Retail_Price),Year)),'0.00%')

我还添加了NUM 函数以将您的结果格式化为百分比。

有关高级聚合(即AGGR)的更多信息可以在 QlikView 参考手册的第 25.2 节中找到(在我的副本中它位于第 291 页)。

【讨论】:

    猜你喜欢
    • 2017-02-10
    • 2021-10-11
    • 2013-08-30
    • 1970-01-01
    • 1970-01-01
    • 2018-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多