DAX 篩選器 - CROSSFILTER 函式



描述

指定在針對兩個列之間存在的關聯進行計算時要使用的交叉篩選方向。

DAX CROSSFILTER 函式是 Excel 2016 中的新增功能。

語法

CROSSFILTER (<columnName1>, <columnName2>, <direction>) 

引數

序號 引數及描述
1

columnName1

完全限定的列名,通常表示關聯的“多”端或資料(事實)表端。

如果引數順序相反,函式將在使用它們之前交換它們。此引數不能是表示式。

2

columnName2

完全限定的列名,通常表示關聯的“一”端或查詢表端。

如果引數順序相反,函式將在使用它們之前交換它們。此引數不能是表示式。

3

direction

要使用的交叉篩選方向 -

  • 單向 (One) - 根據關聯的“一”端或查詢表端篩選“多”端。

  • 雙向 (Both) - 任一端篩選都會篩選另一端。

  • 無 (None) - 此關聯不執行交叉篩選。

返回值

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)) 
dax_functions_filter.htm
廣告
© . All rights reserved.