我有列表:
person | x1 | x2 | par1 | par1_detailed
所以,我需要根据x1 / x2参数“par1”,“par1_detailed”对这些人进行排名。我在这个用例中的工作示例:
SELECT
person ,
SUM(x1) AS y,
SUM(x2) AS x,
(SUM(x1)/SUM(x2) - 1) AS z,
RANK() OVER (PARTITION BY par1, par1_detailed ORDER BY z DESC) AS rank,
par1,
par1_detailed
FROM
[table]
GROUP BY
person,
par1,
par1_detailed
我正在使用“排名”对Google Data Studio中的某些表进行排序,它对于包含par1和par1_detailed的表以及我在par1_detailed上使用过滤器的表格非常有效。
因此,当我想要在没有par1_detailed过滤器的情况下对表进行排序或在par1_datailed中选择过滤所有数据时,问题就开始了。对于那种情况,排名计算错误。我明白为什么它在讨价还价(我需要重新计算x1 / x2比率,因为z的总和在这种情况下不显示真正的x1 / x2比率)但我不知道为我的用例创建查询的热点。
修改
表中的数据如下所示:
person1 10101.455000000005 8793.739999999998 201701 (par1) 20170131 (par1_detailed)
这里有任何帮助吗?