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

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

Power BI之DAX神功:第2卷第16回 為何要學(xué)習(xí)時(shí)間智能函數(shù)因?yàn)橛袝r(shí)它不易替代

2021-11-11 11:13 作者:孫興華zz  | 我要投稿

我們以DATEADD為例:

一、DATEADD平移年可以寫出替代方案

《DAX神功》第2卷第12回 講到了DATEADD函數(shù)(既可以環(huán)比,又可以同比)

DATEADD返回在時(shí)間維度上平移后的一組日期。有下面一張表:

表名:Sheet1

【新建表】表1 = DATEADD('Sheet1'[日期],-1,year)

// 紅框內(nèi)是新建表返回的結(jié)果,返回最大日期向前一年的一組數(shù)據(jù)

替代方案的計(jì)算思路:

《DAX神功》答網(wǎng)友問05 返回表的迭代函數(shù)你應(yīng)該注意什么?

我們講解了Selectcolumns選擇原表中的列生成一張新表,Addcolumns是在原表上增加列

上圖中,第二步,我們可以使用Values或DISTINCT函數(shù)對(duì)指定列去重返回表。

去重后,我們將每一行的年份減掉1,得到下表

【新建表】測試 = SELECTCOLUMNS(Values('Sheet1'[日期]),"日期",DATE(YEAR('Sheet1'[日期])-1,MONTH('Sheet1'[日期]),day('Sheet1'[日期])))

這時(shí)就要提到我為什么要先講《火力全開》再講《DAX神功》,大家在學(xué)習(xí)DAX原理時(shí)應(yīng)該發(fā)現(xiàn)了這個(gè)問題,從來沒講的過的函數(shù)拿來就用。

《The Definitive Guide to DAX》也是如此。例如今天我們要使用的TREATAS 函數(shù)【無關(guān)系情況下查找匹配】詳見《火力全開》筆記24.02

函數(shù)語法是招式,原理是內(nèi)功,能耍出降龍十八掌的,不一定是洪七公,也可能是演員+特效。況且你連招式都沒見過,冒然學(xué)習(xí)原理,你聽到的大多是這句話:“孫興華不講原理,他坑人誤導(dǎo)人,少年,我看你骨骼驚奇,是萬中無一的練武奇才,維護(hù)世界和平就靠你了,我這里有本武功秘籍,見與你有緣,就十塊賣給你了”。哪里是有緣,明擺著詆毀別人推銷自己。

我曾經(jīng)做過一個(gè)夢,張三是個(gè)富二代,父親去世后他繼承了財(cái)產(chǎn),他看到自家經(jīng)營的產(chǎn)業(yè)已無優(yōu)勢,于是抵押了全部家當(dāng)向銀行貸款研發(fā)手機(jī),但是手機(jī)銷量不好,于是他開始劍走偏鋒,專門研究百元機(jī),但是銷量仍然不好,這時(shí),他雇傭水軍,炮哄華米OV,說他們不經(jīng)營百元機(jī)。結(jié)果華米OV高層坐到一起商量了一下,四大廠商決定將千元機(jī)賣百元機(jī)的價(jià)格,賠點(diǎn)錢不算什么,有高端機(jī)掙錢低端機(jī)賠錢,最終控制盈利就行了。一年之后,張三輸光了全部家當(dāng),從一個(gè)富二代變成了老賴。好好的做生意,清清白白的做人不行嗎?

TREATAS函數(shù)

作用:就是把一參當(dāng)作二參的篩選器,通過一參篩選二參。

【新建表】

表2 =?treatas(SELECTCOLUMNS(Values('Sheet1'[日期]),"日期",DATE(YEAR('Sheet1'[日期])-1,MONTH('Sheet1'[日期]),day('Sheet1'[日期]))),'Sheet1'[日期])

上述代替方案在平移年情況下是有效的,但是平移月時(shí),DATEADD就顯示出自己的優(yōu)勢了。

二、DATEADD平移月份

【新建表】表1 = DATEADD('Sheet1'[日期],-1,MONTH)

如果,我們照貓畫虎,按平移年的方法平移月份,你會(huì)發(fā)現(xiàn)錯(cuò)誤的返回結(jié)果:

【新建表】表2 = treatas(SELECTCOLUMNS(DISTINCT('Sheet1'[日期]),"日期",DATE(YEAR('Sheet1'[日期]),MONTH('Sheet1'[日期])-1,day('Sheet1'[日期]))),'Sheet1'[日期])

使用TREATAS函數(shù)第1參篩選第2參:

結(jié)果對(duì)比:會(huì)發(fā)現(xiàn)丟失了很多日期,是因每一行日期月份減1造成的。

以后,遇到您的方案是否可以代替時(shí)間智能日期函數(shù)時(shí),建議親自驗(yàn)證,以結(jié)果為準(zhǔn)。

友情提示:《The Definitive Guide to DAX》關(guān)于理解DATEADD函數(shù)提供了3個(gè)規(guī)則(案例),很有參考價(jià)值,當(dāng)你理解了上述原理之后,這3個(gè)案例是對(duì)你理解的加強(qiáng)。

《孫興華講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??

Power BI之DAX神功:第2卷第16回 為何要學(xué)習(xí)時(shí)間智能函數(shù)因?yàn)橛袝r(shí)它不易替代的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
宁海县| 湛江市| 西贡区| 阳原县| 安仁县| 尼木县| 穆棱市| 济源市| 定南县| 北海市| 乌什县| 马关县| 连平县| 成武县| 汪清县| 木里| 武隆县| 鄂州市| 呼玛县| 嘉义市| 九寨沟县| 沂源县| 鸡泽县| 兴义市| 涡阳县| 探索| 荣昌县| 吉林省| 宽城| 乐昌市| 武隆县| 麻江县| 五常市| 威远县| 馆陶县| 石景山区| 辽阳县| 鄂托克前旗| 双辽市| 天长市| 彰化县|