本月的更新,模子视图中新增了一个“值筛选动作”的功能西野翔吧,这篇著作就带来剖判一下它的作用。在先容值筛选动作之前,率先来了解一下DAX启动的一个底层机制:Auto-Exist。
剖判Auto-Exist
DAX 底层启动有一种自动筛选机制,被称为Auto-Exist,旨在减少无效组合的规划职守。当淹没表中的多个列被用于筛选时,DAX 会自动排斥不存在的值的组合,来达到优化性能的成果。
以底下这个简便的数据来施展,这是淹没个表的三列数据:
要是要检察每年每个家具的客户数目,不错这三列径直拉个如下的矩阵,年度放入【行】、家具放入【列】、客户放入【值】(团员风光聘请计数):
假如思规划统共家具的客户数,写个度量值如下:
客户数 沿途家具 =
CALCULATE(COUNTROWS('表'),ALL('表'[家具]))
并用年度列和家具列添加两个切片器,要是聘请2023年和2024年,规划收尾是6,这个收尾是无边的,从上头的矩阵也不错看出来(2023年 4+2024年2)。
在此基础上,家具切片器聘请B,收尾也照旧6:
这个收尾亦然无边的,毕竟在度量值中,也曾把家具的筛选通过ALL函数拔除了。
要是将家具切片器从B切换到C ,表面上来说也不会受影响,收尾还应该是6,然而事实上收尾却形成了4:
这是如何回事呢?
这即是Auto-exist在起作用,在这个例子中,咱们用年度和家具两个字段来筛选数据,两个筛选器会自动合并为一个筛选器,并剔除无效的组合,2024年是莫得C家具的,即是无效组合,是以它自动去除了,规划收尾唯有2023年的客户数目4。
按照无边的逻辑,在度量值中也曾将家具列的筛选拔除了,该字段不应该对收尾产生影响,如何让它保合手这个逻辑而不启用Auto-Exist机制呢?
这即是本月更新的值筛选动作要责罚的问题。
值筛选动作
为了责罚Auto-Exist带来的潜在问题,本月更新提供了对值筛选动作的纵容选项。
在模子视图的属性窗格中,用户不错在【值筛选器动作】聘请以下三种动作:
自动:这是面前的默出嫁置,启用Auto-Exist。以后实现此预览时,配置为“自动”的模子将默许使用"稳固"。
草榴社区地址稳固:强制关闭Auto-Exist,淹没表的多个筛选器保合手稳固。
合并:强制启用Auto-Exist,淹没表的多个筛选器合并为一个。
通过聘请符合的值筛选动作,用户不错更好地纵容数据模子的规划收尾。
关于上头的例子,要是配置为"稳固",年度列和家具列就形成了两个稳固的筛选器,它会探究2024年的客户数目,统共家具的客户数将按预期复返6,而不会受到Auto-Exist的影响。
剖判DAX中的Auto-Exist机制和值筛选动作,咱们不错更好地纵容数据模子的规划逻辑,幸免不测的收尾。
除了运用“值筛选动作”来纵容Auto-Exist动作,其实更灵验的作念法是优化模子,通过维度表迷惑星型模子,不同类型的筛选器来自于不同的维度表,就不会出现多个筛选器来自一个表的情况,也就能从压根上幸免Auto-Exist引起的问题。
PowerBI星球的最新版块色合辑,值得你保藏学习:
.
西野翔吧