这肯定是一个常见问题,但是我找不到一个简单的答案,对我来说很有意义。
在下面的视图中,我只是按加班百分比列出前N名员工。由于我的数据每个EMPID都有一行,因此视图中的每一行应仅代表数据中的一行,因此,在我的Tableau术语的新手方言中,该视图的维度或粒度为行级。
因此,我使用哪种聚合类型都无关紧要:MIN,MAX,AVG,SUM都应提供相同的数字。尽管如此,使用任何聚合仍然困扰我,原因有二:1)如果我使用的不是SUM,它会在列名中显示(默认情况下,我知道可以手动更改);和2)如果我确实使用SUM,并且弄乱了我的假设,即表中的每一行都代表数据中的一行,那么这个数字可能很不正确,而我却没有注意到问题。
我是否只需要吸收它并选择最不困扰我的聚合类型,还是对精打细算的数据书呆子在Tableau中做到这一点有正确的方法?哦,我希望答案不是,“将其从度量转换为维度”,因为我尝试过这种尝试,然后似乎失去了使用常规数字格式的能力。
我还会问,因为答案可能与我的主要问题有关,所以过滤器和列区域中的“度量名称”药丸以及“标记”下的“度量值”是怎么回事?我不记得把它们放在那里,尝试移除它们时会发生奇怪的事情。
答案 0 :(得分:1)
默认情况下,Tableau始终会生成聚合查询(SQL GROUP BY)-这样,可视区域上的每个标记都可能表示许多数据行。但是,可以通过从“分析”菜单中关闭“聚合度量”来告诉Tableau不要生成聚合查询。
在这种情况下,您将在数据行和标记之间获得一对一的映射(更精确地在数据行和查询结果之间)。这样,维度和度量的整个概念将不适用,并且SQL查询不包含GROUP BY子句。
这样做没错。它会摆脱标签中的SUM()等。只需意识到Tableau中的某些有用功能仅可用于聚合查询。关闭聚合查询有时很有用,但我个人很少这样做-而是通过选择要使用的维度来控制可视化的粒度。