- DAX 函数教程
- DAX 函数 - 首页
- DAX 函数 - 简介
- DAX 参数命名约定
- 描述结构
- DAX 函数 - 聚合
- DAX 函数 - 筛选
- DAX 函数 - 时间智能
- DAX 函数 - 日期和时间
- DAX 函数 - 信息
- DAX 函数 - 逻辑
- 数学与三角函数
- DAX 函数 - 父子关系
- DAX 函数 - 统计
- DAX 函数 - 文本
- DAX 函数 - 其他
- DAX 函数有用资源
- DAX 函数 - 快速指南
- DAX 函数 - 有用资源
- DAX 函数 - 讨论
DAX 筛选器 - CROSSFILTER 函数
描述
指定在针对两个列之间存在的关联进行计算时要使用的交叉筛选方向。
DAX CROSSFILTER 函数是 Excel 2016 中的新增功能。
语法
CROSSFILTER (<columnName1>, <columnName2>, <direction>)
参数
序号 | 参数及描述 |
---|---|
1 |
columnName1 完全限定的列名,通常表示关联的“多”端或数据(事实)表端。 如果参数顺序相反,函数将在使用它们之前交换它们。此参数不能是表达式。 |
2 |
columnName2 完全限定的列名,通常表示关联的“一”端或查找表端。 如果参数顺序相反,函数将在使用它们之前交换它们。此参数不能是表达式。 |
3 |
direction 要使用的交叉筛选方向 -
|
返回值
DAX CROSSFILTER 函数不返回任何值。
DAX CROSSFILTER 函数仅为指定的关联设置交叉筛选方向,持续时间为查询期间。
备注
对于 1:1 关联,单向和双向之间没有区别。
CROSSFILTER 只能用于将筛选器作为参数的函数。例如,CALCULATE、CALCULATETABLE、CLOSINGBALANCEMONTH、CLOSINGBALANCEQUARTER、CLOSINGBALANCEYEAR、OPENINGBALANCEMONTH、OPENINGBALANCEQUARTER、OPENINGBALANCEYEAR、TOTALMTD、TOTALQTD 和 TOTALYTD 函数。
CROSSFILTER 使用模型中现有的关联,通过其结束点列识别关联。
在 CROSSFILTER 中,关联的交叉筛选设置并不重要。也就是说,关联在模型中设置为筛选单向还是双向并不影响函数的使用。CROSSFILTER 将覆盖任何现有的交叉筛选设置。
如果作为参数命名的任何列都不是关联的一部分,或者参数属于不同的关联,则会返回错误。
如果嵌套了 CALCULATE 表达式,并且多个 CALCULATE 表达式包含 CROSSFILTER 函数,则在发生冲突或歧义的情况下,最内层的 CROSSFILTER 将优先。
示例
= CALCULATE (Sales[Distinct Count of Products], CROSSFILTER (Sales[Product],Products[Product],Both))