最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

PowerBI之DAX神功:第1卷第22回 Calculate調(diào)節(jié)器之CROSSFILTER函數(shù)

2021-08-27 11:49 作者:孫興華zz  | 我要投稿

上節(jié)課我們學(xué)習(xí)了USERELATIONSHIP函數(shù)功能是啟用備胎關(guān)系(虛線),并終止現(xiàn)任關(guān)系(實(shí)線)

截止上節(jié)課,我們已經(jīng)完整的學(xué)習(xí)了,Calculate兩個(gè)調(diào)節(jié)器函數(shù),分別是ALL函數(shù)和USERELATIONSHIP函數(shù)

并且了解到KEEPFILTERS是篩選參數(shù)調(diào)節(jié)器(只是將不能篩選的參數(shù)恢復(fù)篩選),它并不是Calculate調(diào)節(jié)器,KEEPFILTERS不止只可以在Calculate中使用,同時(shí)也可以在迭代函數(shù)中使用,例如 Sumx(keepfilters(ALL(表[列])),表達(dá)式)

同時(shí),學(xué)習(xí)了Calculate調(diào)節(jié)器(等級(jí))優(yōu)先于篩選器,同級(jí)別從左向右執(zhí)行。


接下來,我們?cè)倭私庖幌骂愃坪瘮?shù):CROSSFILTER函數(shù),函數(shù)本身不返回任何值,只改變參數(shù)內(nèi)的關(guān)系

這個(gè)函數(shù)并不是特別重要,它有等價(jià)函數(shù)可以代替其功能


但是,你仍然要保證表與表之間是一對(duì)多關(guān)系(我們不討論一對(duì)一與多對(duì)多關(guān)系)

《DAX神功》第1卷第1回已經(jīng)明確一對(duì)多原則,一百年不許變。


《孫興華講PowerBI火力全開》筆記28.03對(duì)這個(gè)函數(shù)做了詳細(xì)講解

詳細(xì)案例請(qǐng)參考《火力全開》

【1】使用CROSSFILTER函數(shù)前提兩表之間有實(shí)線關(guān)系

如果你兩張表之間本身就沒有連線,這個(gè)函數(shù)無法幫你連線。

【2】第1參數(shù)和第2參數(shù)的位置無所謂,它可以自動(dòng)識(shí)別

度量值1 = CALCULATE(SUM('多端'[分?jǐn)?shù)]),CROSSFILTER('一端'[學(xué)號(hào)],'多端'[學(xué)號(hào)],None))

等價(jià)

度量值1 = CALCULATE(SUM('多端'[分?jǐn)?shù)]),CROSSFILTER('多端'[學(xué)號(hào)],'一端'[學(xué)號(hào)],None))

【3】第3參數(shù):None 無篩選? 其實(shí)就是禁用關(guān)系,將原本的連線臨時(shí)刪除

但是,它與USERELATIONSHIP函數(shù)一樣,都是在這個(gè)度量值里面生效的。

就好比在Access中跟大家講的,兩個(gè)表連線是結(jié)婚的關(guān)系,而查詢中的兩個(gè)表連線是演員演夫妻的關(guān)系。現(xiàn)在就是演員演夫妻的關(guān)系。


USERELATIONSHIP函數(shù)與CROSSFILTER函數(shù),他們對(duì)關(guān)系的處理都是在本度量值之內(nèi)生效的,并沒有改變?cè)缄P(guān)系模型。


例如:我想得到多端表中分?jǐn)?shù)的度量值,但是不想讓一端表中的字段篩選它

但是,由于一端表與多端表是一對(duì)多關(guān)系,一端表本身具有篩選多端表的功能

我可以在度量值1中取消兩表之間的連線關(guān)系:

度量值1 = CALCULATE(SUM('多端'[分?jǐn)?shù)]),CROSSFILTER('一端'[學(xué)號(hào)],'多端'[學(xué)號(hào)],None))

由于USERELATIONSHIP函數(shù)功能是啟用備胎關(guān)系(虛線),并終止現(xiàn)任關(guān)系(實(shí)線)

如果你是想將現(xiàn)任關(guān)系(實(shí)線)終止,而不啟用任何備胎(虛線)關(guān)系時(shí),這個(gè)函數(shù)就派上用場(chǎng)了。但是方法不止一種,ALL函數(shù)同樣可以實(shí)現(xiàn)一端表所有列不能篩選,例如:度量值2

度量值2 = CALCULATE(SUM('多端'[分?jǐn)?shù)]),all('一端'))

【4】第3參數(shù):Both? 雙向篩選

《DAX神功》第1卷第2回 避免使用雙向箭頭? 中做了明確的說明 不建議大家使用雙向箭頭

【5】第3參數(shù):Oneway? 單向篩選

(1)如果關(guān)系模型中是雙向篩選,你可以在度量值中將其改成單向篩選

但是,我始終就不建議你使用雙向篩選關(guān)系

(2)提升速度

【度量值】總分1 = sum('多端'[分?jǐn)?shù)])

【度量值】總分2 = CALCULATE(sum('多端'[分?jǐn)?shù)]),CROSSFILTER('一端'[學(xué)號(hào)],'多端'[學(xué)號(hào)],OneWay))

由于兩張表之間是一對(duì)多關(guān)系,一端可以篩選多端

但是你寫的【總分1】,直接放到模型中,當(dāng)數(shù)據(jù)量較大時(shí),速度會(huì)慢,因?yàn)樗鼤?huì)通過矩陣中一端表的學(xué)號(hào)篩選【總分1】

如果寫成【總分2】的樣子,它在度量值內(nèi)部就已經(jīng)使用了關(guān)系篩選,提升速度。

Ps: 速度是虛無飄渺的事情,如果數(shù)據(jù)量太大,就不建議使用PowerBI了。介時(shí),你可以考慮SQL或Pandas等

【6】calculate多層嵌套CROSSFILTER時(shí)最內(nèi)層生效

同上節(jié)課的USERELATIONSHIP函數(shù)


Ps: 第3參數(shù)還有兩個(gè)OneWay_LeftFiltersRight和OneWay_RightFiltersLeft不用學(xué)習(xí)了。

《孫興華講PowerBI火力全開》PowerBI必學(xué)課程

https://www.bilibili.com/video/BV1qa4y1H7wp

《DAX神功》文字版合集:

https://www.bilibili.com/read/readlist/rl442274

《DAX神功》視頻版合集:

https://www.bilibili.com/video/BV1YE411E7p3

PowerBI(DAX函數(shù))、PowerQuery(M函數(shù))、Python辦公自動(dòng)化、Python爬蟲、Python數(shù)據(jù)分析、ExcelVBA、WordVBA、AccessVBA、MySQL等等

https://www.bilibili.com/read/cv10222110?


PowerBI之DAX神功:第1卷第22回 Calculate調(diào)節(jié)器之CROSSFILTER函數(shù)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
阜平县| 柞水县| 司法| 将乐县| 全椒县| 尼勒克县| 景泰县| 宁强县| 汾阳市| 鲜城| 泽普县| 丘北县| 昭平县| 永嘉县| 镇赉县| 武清区| 渭源县| 秭归县| 肇东市| 黄大仙区| 安仁县| 龙江县| 正宁县| 静海县| 马尔康县| 温州市| 日土县| 宁都县| 尼勒克县| 乌审旗| 龙川县| 阿拉善左旗| 永清县| 阿坝县| 达拉特旗| 高雄市| 图们市| 梓潼县| 河曲县| 招远市| 彭州市|