QlikView 中的 TOTAL 与 Aggr
TOTAL vs Aggr in QlikView
我正在尝试了解 TOTAL
和 Aggr
在 QlikView 中的工作方式。有人可以解释下面两个例子之间的区别吗,如果可能的话请用 SQL 查询来说明?
示例 1:
Max({<Field1=>} Aggr(Sum({<Field2={'Value'}, Field1=>} StuffCount), Field1))
示例 2:
Max({<Field1=>} TOTAL Aggr(Sum({<Field2={'Value'}, Field1=>} StuffCount), Field1))
TOTAL
关键字在 charts/pivot table 秒内很有用。它对 chart/pivot 中的每个数据点应用相同的计算,与维度无关。
因此 - 如果您将表达式放入数据透视表 table - 第一个选项可能会在每个单元格中显示不同的值(如果 Aggr 相关),而第二个选项将产生相同的值。
Aggr
函数允许对不同的组进行双重聚合(求和的平均值、计数的最大值等)。
不确定您在本示例中使用 SQL 查询的意思。无论如何,假设您有这个客户 (CustomerID) 和销售 (Sales) 列表:
客户 ID/销售
- 客户 1 25
- 客户 2 20
- 客户 1 10
- 客户 1 5
- 客户 1 20
- 客户 3 30
- 客户 2 30
然后您想在具有维度 CustomerID 和两个表达式的数据透视表 table 上显示它:
Max(Aggr(Sum(Sales), CustomerID))
// 第一个客户显示 60,第二个客户显示 50,第三个客户显示 30
Max(TOTAL Aggr(Sum(Sales),CustomerID))
//这会在你的每一行显示60table(这是所有客户的最大销售额)
所以基本上 AGGR 使用第二个 (CustomerID) 的维度创建一个时间列表,其中包含您在第一个函数输入(在本例中为 sum(Sales))中输入的任何内容。然后您可以对该列表执行操作(例如 Max、Min、Avg...)。如果您编写 TOTAL 并在主元 table 中使用表达式,那么您 'ignore' 可能会影响操作的维度。
希望对你有帮助
我正在尝试了解 TOTAL
和 Aggr
在 QlikView 中的工作方式。有人可以解释下面两个例子之间的区别吗,如果可能的话请用 SQL 查询来说明?
示例 1:
Max({<Field1=>} Aggr(Sum({<Field2={'Value'}, Field1=>} StuffCount), Field1))
示例 2:
Max({<Field1=>} TOTAL Aggr(Sum({<Field2={'Value'}, Field1=>} StuffCount), Field1))
TOTAL
关键字在 charts/pivot table 秒内很有用。它对 chart/pivot 中的每个数据点应用相同的计算,与维度无关。
因此 - 如果您将表达式放入数据透视表 table - 第一个选项可能会在每个单元格中显示不同的值(如果 Aggr 相关),而第二个选项将产生相同的值。
Aggr
函数允许对不同的组进行双重聚合(求和的平均值、计数的最大值等)。
不确定您在本示例中使用 SQL 查询的意思。无论如何,假设您有这个客户 (CustomerID) 和销售 (Sales) 列表:
客户 ID/销售
- 客户 1 25
- 客户 2 20
- 客户 1 10
- 客户 1 5
- 客户 1 20
- 客户 3 30
- 客户 2 30
然后您想在具有维度 CustomerID 和两个表达式的数据透视表 table 上显示它:
Max(Aggr(Sum(Sales), CustomerID))
// 第一个客户显示 60,第二个客户显示 50,第三个客户显示 30Max(TOTAL Aggr(Sum(Sales),CustomerID))
//这会在你的每一行显示60table(这是所有客户的最大销售额)
所以基本上 AGGR 使用第二个 (CustomerID) 的维度创建一个时间列表,其中包含您在第一个函数输入(在本例中为 sum(Sales))中输入的任何内容。然后您可以对该列表执行操作(例如 Max、Min、Avg...)。如果您编写 TOTAL 并在主元 table 中使用表达式,那么您 'ignore' 可能会影响操作的维度。 希望对你有帮助