函数周期表丨筛选丨表丨FILTER

FILTER函数

FILTER函数属于“筛选”类函数,隶属于“”函数,其使用频率可以算得上最高的几个函数之一。

用途:用来筛选表或者作为计算的筛选条件。

语法

DAX=
FILTER(<表>,<条件>)

参数

表:可以是固定的表,也可以是表的表达式。

条件:过滤条件。

返回结果

由符合筛选条件的行组成的表。

例子

模拟数据:

例子1:

FILTER例子1 =
FILTER ( '例子', MONTH ( '例子'[日期] ) < 2 )

结果:

筛选出2月份之前的所有数据。

例子2:

FILTER例子2 =
FILTER ( '例子', MONTH ( '例子'[日期] ) < 2 && '例子'[类别] = "白" )

结果:

筛选出2月份之前,且颜色为“白”的所有数据。

其效果等同于以下两组代码:

FILTER和AND =
FILTER ( '例子', AND ( MONTH ( '例子'[日期] ) < 2, '例子'[类别] = "白" ) )

结果:

代码:

双层FILTER =
FILTER ( FILTER ( '例子', MONTH ( '例子'[日期] ) < 2 ), '例子'[类别] = "白" )

结果:

从结果上看,三者的结果是一模一样的,但是还是有点区别。

1、从性能上看,双层FILTER的性能优于前两者;

2、从执行顺序上看,多层FILTER时,通常是从内往外计算。

例子3:

FILTER例子3 =
CALCULATE (
    SUM ( '例子'[数据] ),
    FILTER ( FILTER ( '例子', MONTH ( '例子'[日期] ) < 2 ), '例子'[类别] = "白" )
)

结果:

与CALCULATE函数搭配,计算2月份之前,且颜色为白色的数据值。

当然,还有很多别的用法,比如说累计求和等等,这里就不一一举例了。

小伙伴们❤GET了么?

白茶会不定期的分享一些函数卡片

(文件在知识星球[PowerBI丨需求圈])

这里是白茶,一个PowerBI的初学者。

### 如何在 Power BI 中创建和使用交叉 #### 什么是交叉? 交叉是一种用于分析多维数据的强大工具,通常也被称为透视。它可以将多个维度的数据组合在一起,并通过行列布局展示汇总的结果。Power BI 提供了一个名为 **Matrix Visual** 的可视化组件来实现这一功能。 --- #### 创建交叉的步骤说明 1. **加载数据并准备格** 首先确保已导入所需的数据集到 Power BI 数据模型中。如果需要新增计算列,则可以通过 DAX 达式完成[^2]。例如,假设有一个销售数据 `Sales` 和产品分类 `Products`,可以在 `Products` 中添加一列示产品的类别权重: ```dax CategoryWeight = IF('Products'[Category] = "Electronics", 0.8, 0.5) ``` 2. **拖拽字段至 Matrix 可视化控件** 在报画布上选择矩阵(Matrix)图作为可视化选项。随后可以从 Fields 列中选取所需的维度和度量值: - 将维度字段(如地区、时间周期等)放置于行或列区域。 - 把数值型指标(如销售额、数量等)放入 Values 区域。 3. **配置交互行为** 如果希望交叉与其他视觉对象联动,可利用筛选器上下文的功能。当点击某个单元格时,整个仪板会自动更新以反映所选条件下的具体现情况[^1]。 4. **高级设置优化显示效果** 对于更复杂的场景可能需要用到某些特定函数调整逻辑运算方式。比如清除某单一属性的影响以便查看全局趋势可以用 ALL 函数重置当前过滤状态[^3];而针对动态参数传递则推荐采用 SELECTEDVALUE 结合 TREATAS 方法处理跨关系映射问题[^4]。 以下是基于上述理论构建的一个简单实例演示代码片段: ```dax // 计算总销售额不受任何分组约束影响 Total Sales Unfiltered = CALCULATE(SUM('Sales'[Amount]), ALL('Sales')) // 当前选定周次对应的最低价格查询语句模板 Min Price For Selected Week = VAR SelectedWeek = SELECTEDVALUE('Axis dimension Table'[Index]) RETURN CALCULATE( MIN('T_SALES'[PRICE]), FILTER( 'T_SALES', 'T_SALES'[WEEKLY] = SelectedWeek && RELATED('Axis dimension Table'[Promotion]) IN VALUES('T_SALES'[PROMOTION]) ) ) ``` 以上脚本展示了如何定义独立衡量标准以及依据外部输入提取关联记录集合内的极值信息等内容。 --- #### 注意事项 - 矩阵视图支持多种聚合操作,默认情况下会对数值执行求和动作,用户也可以自定义改为平均数或其他统计形式。 - 若发现性能瓶颈现象严重,建议审查底层建模结构是否存在冗余索引或者不必要的复杂达式存在。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fabric丨白茶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值