DAX 筛选器 - USERELATIONSHIP 函数



描述

指定在特定计算中要使用的关系,作为 columnName1 和 columnName2 之间存在的关系。

语法

USERELATIONSHIP (<columnName1>, <columnName2>) 

参数

序号 参数及描述
1

columnName1

表示要使用的关系的多端的一个完全限定的列名。

如果参数的顺序相反,则函数将在使用它们之前交换它们。

此参数不能为表达式。

2

columnName2

表示要使用的关系的一端或查找端的一个完全限定的列名。

如果参数的顺序相反,则函数将在使用它们之前交换它们。

此参数不能为表达式。

返回值

DAX USERELATIONSHIP 函数不返回值。该函数仅在计算期间启用指示的关系。

备注

  • USERELATIONSHIP 只能用于将过滤器作为参数的 DAX 函数中。例如,CALCULATE、CALCULATETABLE、CLOSINGBALANCEMONTH、CLOSINGBALANCEQUARTER、CLOSINGBALANCEYEAR、OPENINGBALANCEMONTH、OPENINGBALANCEQUARTER、OPENINGBALANCEYEAR、TOTALMTD、TOTALQTD 和 TOTALYTD 函数。

  • USERELATIONSHIP 使用模型中现有的关系,通过其结束点列识别关系。

  • 在 USERELATIONSHIP 中,关系的状态并不重要;也就是说,关系是活动还是非活动不会影响函数的使用。即使关系处于非活动状态,它也将被使用,并覆盖模型中可能存在但未在函数参数中提及的任何其他活动关系。

  • 如果作为参数命名的任何列不是关系的一部分,或者参数属于不同的关系,则会返回错误。

  • 如果需要多个关系才能在计算中将表 A 联接到表 B,则必须在不同的 USERELATIONSHIP 函数中指示每个关系。

  • 如果嵌套了 CALCULATE 表达式,并且多个 CALCULATE 表达式包含 USERELATIONSHIP 函数,则在发生冲突或歧义的情况下,最内部的 USERELATIONSHIP 将是优先使用的。

  • 最多可以嵌套 10 个 USERELATIONSHIP 函数。但是,您的表达式可能具有更深层次的嵌套。

示例

Product Sales:= CALCULATE ( 
   SUM (Sales[Sales Amount]), 
   USERELATIONSHIP (Sales[Product],Products[Product]) 
)
dax_functions_filter.htm
广告