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

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

Power BI之DAX神功:第4卷第2回 創(chuàng)建基于范圍的關(guān)系

2021-12-18 09:14 作者:孫興華zz  | 我要投稿

提到基于范圍的關(guān)系,第一個應(yīng)該想到的是分數(shù)區(qū)間,例如95~100是優(yōu)秀,0~59是不及格。在工作中,還有很多區(qū)間范圍,例如最基礎(chǔ)的客單價。

有些人問我,為什么你總拿賣菜的舉例,這里就有一個最大的問題,如果我是財務(wù),且我現(xiàn)在是給財務(wù)講知識,那我應(yīng)該用財務(wù)知識舉例,但我不是財務(wù),且現(xiàn)在我面向所有人,就要用所有人都懂的案例,賣菜、賣水果、開個網(wǎng)店,明顯是不需要指定專業(yè)的,誰都懂的知識。我4歲就帶著兒時的小伙伴,拿著一堆塑料玩具水果在馬路邊上過家家,小伙伴手里還抱著個洋娃娃。當時我在上幼兒園。

一、區(qū)間范圍

我想將上面區(qū)間表的評價列,V到客戶表中,是無法直接做的。

區(qū)間表行數(shù)比較少,我們只需要通過IF或SWITCH方式來寫,你要思考一個問題,新增一個列真的比加入一張表更消耗性能嗎? 有這個可能,但不一定。

我們可以通過以下兩種方式新建列:詳見《孫興華講PowerBI火力全開》筆記12.2和12.3

由于IF語句嵌套太多時,容易亂,這時Switch更適合做這樣事:

圖片來自《火力全開》筆記12.3

根據(jù)《火力全開》第12課講的知識,我們可以將新建列代碼寫成下面的樣子:

二、回答網(wǎng)友問題

問:中文版《權(quán)威指南》第454和455頁的案例測試出現(xiàn)問題!

答:別照著抄,這不是學語言。它的案例上一張銷售表,一張區(qū)間表,這兩張表本來就沒關(guān)系?可能是作者跟你開了一個玩笑,也可能寫到這一篇時正好是愚人節(jié),西方人對愚人節(jié)很重視的,我小時候在愚人節(jié)時告訴同學,老師找你,同學去了辦公室,老師問清了情況把我批了一頓,批我的理由:這不是中國人的節(jié)日。我大概舉例說明一下:

【1】作者先通過Switch函數(shù)給客戶表增加列(我這里的客戶表就好比人家的銷售表),新建列函數(shù)如下:

返回結(jié)果:

【2】將客戶表與區(qū)間表建立關(guān)系。你先別笑:)

【3】再到客戶表中新建列

《DAX神功》第1卷第10回?? 我們講到,一行一列的表,可以返回標量值,上面的公式:篩選區(qū)間表最小金額小于等于客戶表消費金額,且區(qū)間表最大金額大于客戶表消費金額的這張表,用這張表再篩選出對應(yīng)的標量值。

星爺:怎么樣,開不開心,意不意外?哈哈哈哈...

先別抬扛,我知識寫成下面的代碼也可以:但是你無法通過序號建立兩張表的關(guān)系,要解決這個問題,我們需要下節(jié)課來講

最終,區(qū)間表也導入了,關(guān)系有了,新建列也建立了。可能有人會說,這樣做有一個好處,因為現(xiàn)在的評價字數(shù)比較少,如果字數(shù)多,我們先用switch返回1,2,3,4,5,6... 這樣好一些。如果你打字速度慢最根本的解決方法是練打字速度,如果你短期無法提升打字速度也有辦法:將客戶表中的最大那列前N項復制過來,評價那列前N項復制過來。

敲上A列的'客戶表'[消費金額]<=,與C和E列的逗號引號,分別選A3:A5、C3:C5、E3:E5,按Ctrl+D向下填充。《孫興華講Excel基礎(chǔ)篇》都講過這些最基礎(chǔ)的知識。

我們在G列把A到E列都連接起來:

將G3:G5復制到記事本,添加開頭和結(jié)尾,搞定:

現(xiàn)在,你知道DAX大師跟你開的這個玩笑了吧?不需要哪門知識學到精通,哪怕是皮毛,只要思路對,都可以融匯貫通。人腦容量是有限的,一種東西裝滿了,自然就要舍棄其它的東西,比如科學家英語數(shù)學都好,但是他們沒有像我這樣天天打游戲、刷劇、無條件免費講課出來讓網(wǎng)絡(luò)講師生氣的:)科學家將所有時間都放在學習和科研工作上面了。

三、特殊情況

有些小伙伴會說了,如果區(qū)間表變成上圖樣子,Switch函數(shù)就不行了。這明顯是你的區(qū)間表配置不合理。我就想不通,有些壞人做了違法的事情花錢找律師給他辯護,你不違法不行嗎?你為什么不從根本上解決問題呢?(律師可能不愛聽了,我只是看不貫?zāi)切娜耍皇怯绊懩銈兩猓?/p>

例如,我們在客戶表新建評價列時,張三消費97元,既符合30~100的區(qū)間,又符合80~300的區(qū)間,在篩選表時,肯定會出現(xiàn)下圖這樣的表:除去表頭,這是一個2行1列的表,能返回標量值嗎?肯定不行

所以遇到這種情況,返回空就可以了,《DAX神功》第1卷第4回 我們講了IFERROR函數(shù)

圖片來自《DAX神功》第1卷第4回

新建列代碼應(yīng)該改寫成:

返回:

又有小伙伴要提問了,因為張三同時滿足中和大,不想返回空,想返回:中、大

詳見《DAX神功》第1卷第10回 我們講到了CONCATENATEX函數(shù)

返回結(jié)果:

《孫興華講PowerBI火力全開》PowerBI必學課程

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辦公自動化、Python爬蟲、Python數(shù)據(jù)分析、ExcelVBA、WordVBA、AccessVBA、MySQL等等

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

Power BI之DAX神功:第4卷第2回 創(chuàng)建基于范圍的關(guān)系的評論 (共 條)

分享到微博請遵守國家法律
苏尼特左旗| 新巴尔虎左旗| 广东省| 阿瓦提县| 漠河县| 马龙县| 东安县| 宜阳县| 蓬安县| 新密市| 通辽市| 建平县| 易门县| 平谷区| 句容市| 昌平区| 河东区| 长宁区| 富顺县| 自贡市| 荆州市| 株洲县| 遵义县| 铜川市| 陈巴尔虎旗| 万源市| 江华| 平乡县| 夏河县| 清远市| 铁岭县| 通河县| 中方县| 卢湾区| 东乡族自治县| 景宁| 连云港市| 德州市| 乡宁县| 通道| 渑池县|