是否可以在数据透视表的另一个计算维度中引用一个计算维度? ValueList() 可以用于此用途吗?它的适当语法是什么?
我无法为此使用脚本,也无法创建新变量。
我无法将第一个计算维度的整个表达式复制到第二个计算维度的表达式中,因为这两个表达式都非常昂贵 (pick(match(...))。
谢谢
最佳答案
遗憾的是,没有明显的方法可以在其他计算维度中引用其他计算维度。正如您提到的,您只能创建表达式解决方案,那么我使用变量的其他建议在这种情况下不适用。
因此看来您必须重复计算的尺寸。
我想说,如果您确实必须使用表达式解决方案,那么可能值得尝试尽可能地优化您的计算维度,这样当您必须在文档中重复它时,它对系统的额外影响应该可以忽略不计。性能。
ValueList
对于生成维度值很有用,但我认为它对您没有帮助,因为您仍然无法使用它引用其他计算维度。它实际上是为计算维度生成值而设计的,并具有以下语法:
ValueList(value {, value })
例如,我可以使用:
=ValueList('Category A','Category B','Category C')
如果我将其放入数据透视表图表中,我将获得:
如您所见,对于 ValueList 提供的每个条目,表达式的值都会重复。然而,ValueList 有一个很好的技巧,这意味着您还可以在表达式中使用它来根据它显示的维度值来显示不同的值。
例如,如果我使用以下内容作为表的表达式:
=if(ValueList('Category A','Category B','Category C')='Category A',
sum(Value * 10),
if(ValueList('Category A','Category B','Category C')='Category B',
sum(Value * 100),
sum(Value * 1000)
)
)
在这里您可以看到,我添加了一个测试来查看我们是否处于“类别 A”,然后显示值 sum(Value * 10)
,然后显示“类别 B”,sum(Value * 100)
等等,结果是:
关于charts - QLikVIew 对另一个计算维度中的计算维度的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24648998/