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

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

Power BI之DAX神功:第4卷第1回 使用計算列創(chuàng)建物理關(guān)系

2021-12-17 10:59 作者:孫興華zz  | 我要投稿

這一卷大家放輕松,沒有太多用腦過度的知識,主要講解DAX高級關(guān)系,但是在實際應(yīng)用中,我們普遍是化繁為簡的,表格數(shù)量也是越少越好的,有些人會說為了更多顆粒度,我需要使用很多表格。那你想一想,你分析不出結(jié)果或是結(jié)果錯了,顆粒度還是最重要的嗎?這就好比我們玩FPS游戲時,為了撿一把好的裝備,結(jié)果被暴頭了,這種情況還不如拿個普遍裝備站到最后的。不是不可以有“高要求”,但是要先有能力,再說要求。

一、主鍵和外鍵不一樣,怎么建立關(guān)系

我們在SQL中的處理方法:截取表1學(xué)號列,從第2個字符開始截取到最后一個字符。然后再與表2的學(xué)號列建立關(guān)系。SQL語句如下(Access下測試)

查詢結(jié)果:

那么在DAX中用計算列怎么處理呢?

Ps:這是教學(xué)目的講述在主鍵與外鍵不同的情況下如何處理,暫時使用1對1關(guān)系舉例,1對多也是同理。

當然方法不只一種,你也可以對表2增加字母A,再與表1的學(xué)號列建立關(guān)系。

特別注意:如果使用mid函數(shù),它與Excel工作表函數(shù)、VBA、SQL等都不一樣,DAX中的mid函數(shù)要求輸全3個參數(shù),mid(字符串,從哪里開始,截取幾個)?

防抬扛:如果主鍵和外鍵不是這樣的,例如主鍵abc,外鍵123;既然這兩張表你認為他有聯(lián)系,想必主鍵與外鍵你的企業(yè)曾經(jīng)修改過,或者有自己的一套對應(yīng)方案。你可以使用VBA的字典或者PowerQuery先進行數(shù)據(jù)清洗后再使用DAX建模。

二、雙主鍵(復(fù)合主鍵)問題

權(quán)威指南上提供了一個例子,但是它的表和數(shù)據(jù)都太多了,其實目的很簡單

我大致用自己的理解說一下:

先說業(yè)務(wù):以銷售表第一行為例,一店商品A01,實際銷售金額1元,如果不打折我的正常售價應(yīng)該是多少錢?1 / 0.7 = 1.43元 其它行都以此類推

你不能使用日期連線,也不能使用商品編碼連線,在數(shù)據(jù)庫中,我們可以直接建立多條關(guān)系

SQL代碼:

那么在DAX中如何使用新建列搞定:

權(quán)威指南上并沒有向我這樣去做,而是使用COMBINEVALUES函數(shù),函數(shù)作用:將多個文本字符串聯(lián)接成一個文本字符串。支持 DirectQuery 模型中的多列關(guān)系。

語法:COMBINEVALUES(分割符,第1列,第2列,........第N列)

返回結(jié)果:

Import和DirectQuery主要有以下區(qū)別:

Import:被選中的表單和列會被以復(fù)制的形式導(dǎo)入到PowerBI里。當你創(chuàng)建或者使用可視化時,PowerBI使用的是導(dǎo)入本地的數(shù)據(jù)。如果源數(shù)據(jù)發(fā)生變化,你必須通過刷新方式相當于將所有的數(shù)據(jù)重新導(dǎo)入一次才能在Power BI中看的更新。

DirectQuery:源數(shù)據(jù)不會被導(dǎo)入或者復(fù)制到Power BI里。相關(guān)數(shù)據(jù)源的表單和列會出現(xiàn)在Power BI的字段中。當你創(chuàng)建或者使用可視化時,PowerBI會直接從數(shù)據(jù)源中查找數(shù)據(jù),這就相當于你的數(shù)據(jù)永遠是最新的。

跟我學(xué)過Access的小伙伴,Import就類似導(dǎo)入表,DirectQuery方式就類似鏈接表。

Excel文件我們使用導(dǎo)入表就可以了,你可以想一想,如果你連接的MySQL服務(wù)器,SQL Server服務(wù)器,他可能把服務(wù)器上的內(nèi)容復(fù)制到你的電腦上嗎?先別管速度問題,你硬盤也存不下呀。這時采用的就是鏈接表形式。

所以在我們導(dǎo)入Excel表格的情況下,以上兩種新建列方式在速度上并無區(qū)別。

三、如果只是想從另一張表中獲取列內(nèi)容,建議LOOKUPVALUE

《DAX神功》第1卷第6回?我提到了Lookupvalue表之間可以不建立關(guān)系(但是你來PowerBI并不是只添列加著玩來,遲早都要建立關(guān)系的)

我們現(xiàn)在提供的只是一個教學(xué)案例,你實際工作表,這兩個表肯定有N多列,如果你只是想V過來很少的列,那么選擇Lookupvalue也是不錯的選擇。

語法:Lookupvalue(把哪張表的哪個列拿過來, 找那張表上的誰, 找自己表里的誰.....)

當日期和商品編碼都滿足條件時,我們將折扣V過來:

返回結(jié)果:

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

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

Power BI之DAX神功:第4卷第1回 使用計算列創(chuàng)建物理關(guān)系的評論 (共 條)

分享到微博請遵守國家法律
德清县| 花莲县| 苏州市| 吴江市| 枣庄市| 迁安市| 唐河县| 永济市| 波密县| 重庆市| 渑池县| 泽库县| 桐梓县| 郧西县| 宣恩县| 成安县| 元阳县| 永新县| 奈曼旗| 宁都县| 扶风县| 镇雄县| 南陵县| 新津县| 绥芬河市| 札达县| 准格尔旗| 洪泽县| 松原市| 廊坊市| 江津市| 泗水县| 绥棱县| 同心县| 洛宁县| 无为县| 龙岩市| 银川市| 苏州市| 吴旗县| 准格尔旗|