1.ALL, ALLEXCEPT, ALLSELECTED
ALL(table/column) --ALL用來清除整個(gè)表或某個(gè)字段的篩選條件,通常配合CALCULATE使用
ALLEXCEPT(table/column) --刪除表中除已應(yīng)用于指定列的篩選器之外的所有上下文篩選器
ALLSELECTED(table/column) --從當(dāng)前查詢的列和行中刪除上下文篩選器,同時(shí)保留所有其他上下文篩選器或顯式篩選器
2.CALCULATE(<expression>,<filter1>,<filter2>...)
--Calculate可以應(yīng)用在多個(gè)表
Calculate使用AND關(guān)系時(shí)可直接在條件間加',',但表達(dá)“或”時(shí),必須用'||',而且連接的兩個(gè)條件
必須引用同一列。
Calculate中當(dāng)“[列] = 固定值”這種篩選搞不定時(shí),可用filter/all/values篩選器搭配使用
3.FILTER(table,<filter>) --返回值:只包含篩選行數(shù)據(jù)的表
--篩選時(shí)對(duì)表進(jìn)行逐行掃描,計(jì)算量很大,所以選擇篩選的表盡量為lookup表
4.HASONEVALUE(<columnName>) --將 columnName 的上下文篩選為只剩下一個(gè)非重復(fù)值時(shí),
將返回 TRUE。 否則為 FALSE。
5.RELATED(<column>) --將“一”端的列值添加到“多”端的表中
RELATEDTABLE(<tableName>) --將“多”端關(guān)聯(lián)的表數(shù)據(jù)添加到“一”端的列上,
返回的是一張表
6.VALUES(<TableNameOrColumnName>) --返回由一列構(gòu)成的一個(gè)表,該表包含來自指定表或列的
非重復(fù)值。 換言之,重復(fù)值將被刪除,僅返回唯一值。
7.EARLIER函數(shù):
例如我們有“產(chǎn)品名稱”和“銷售金額”兩列數(shù)據(jù)?;诖耍覀兿M?jì)算出每個(gè)產(chǎn)品的銷售金額排名。
COUNTROWS(
FILTER('產(chǎn)品銷售表',
EARLIER('產(chǎn)品銷售表'[銷售金額])<'產(chǎn)品銷售表'[銷售金額])
)+1
--EARLIER=當(dāng)前行,按照當(dāng)前行進(jìn)行逐行掃描,SUMX+FILTER+EARLIER
是Power Pivot中比較常用的函數(shù)組合,由于Earlier針對(duì)每一行數(shù)據(jù)都進(jìn)行計(jì)算,
所以理論上計(jì)算量相當(dāng)于數(shù)據(jù)行數(shù)的平方。如果有10行數(shù)據(jù),則需要計(jì)算100次,
所以數(shù)據(jù)量大的時(shí)候大家使用要小心,有可能會(huì)造成模型計(jì)算緩慢。








暫無數(shù)據(jù)