商業(yè)分析報告與商業(yè)智能報告的區(qū)別
關(guān)系型表結(jié)構(gòu)數(shù)據(jù)與非關(guān)系型表結(jié)構(gòu)數(shù)據(jù)區(qū)別
BI報表流程
業(yè)務(wù)理解-->數(shù)據(jù)收集-->數(shù)據(jù)加工處理-->數(shù)據(jù)建模-->分析規(guī)則創(chuàng)建-->數(shù)據(jù)展現(xiàn)
M函數(shù)基礎(chǔ)
編輯M函數(shù)方法:
通過“編輯欄”、“添加自定義列”或“高級編輯器”等功能了解M函數(shù)表達(dá)式寫法。
根據(jù)需求重新編輯表達(dá)式程序。
編輯錯誤通過“查詢設(shè)置”區(qū)域退回重新編輯。
在編輯器中輸入“=#shared”可以查看M函數(shù)列表
M函數(shù)基本表達(dá)式:
M函數(shù)的注釋: 單行注釋符為
// 多行注釋符為/*…..*/
M函數(shù)基本表達(dá)式: let…in…結(jié)構(gòu):
let用于封裝計算結(jié)果,并為計算結(jié)果命名。
in用于顯示結(jié)果
自定義函數(shù):
(參數(shù)1,參數(shù)2,參數(shù)3……) => 函數(shù)運(yùn)算表達(dá)式※通過調(diào)用函數(shù)得到的函數(shù)返回值稱為函數(shù)值
例: (parameter1 as number, parameter2 as number) =>
let Final = (parameter1 + parameter2) / 2
in Final
if表達(dá)式
if表達(dá)式通過對邏輯條件進(jìn)行判斷來對兩個表達(dá)式進(jìn)行選擇。
例: if 2 > 1 then 2 + 2
else if 2 = 1 then 2 + 1
else 1 + 1
結(jié)構(gòu)化數(shù)據(jù)
列表(List):
列表是擴(kuò)在花括號中的一組數(shù)據(jù),列表中每個數(shù)據(jù)都有屬于自己的序號以便自己能夠被檢 索到,列表中的數(shù)據(jù)序號從0開始按照排列順序依次整數(shù)遞增,大列表內(nèi)還可以嵌套子列表、 記錄等。花括號除了用來括起列表內(nèi)的所有數(shù)據(jù)還用來指定列表內(nèi)數(shù)據(jù)的序號,通過指定數(shù) 據(jù)序號可以從列表內(nèi)找到并獲取所需的數(shù)據(jù)值。
記錄(Record):
記錄用來定義字段和給字段賦值,一個字段由字段名以及字段內(nèi)的值組成,字段名是唯一 的文本值,是字段的標(biāo)識符。字段名可以不用引號引用,字段名有兩種表達(dá)形式:
> 不加""的表達(dá)形式、例如OrderID
> 加#和""的表達(dá)形式、例如#"Today's data is:"
記錄中的內(nèi)容寫在[]括號內(nèi),[]括號同樣用于在記錄中取特定字段的值。
表(Table):
表是由行列數(shù)據(jù)構(gòu)成的,可以使用隱式或顯示方式定義字段(列)的數(shù)據(jù)類型。使用 #table建表時,可以使用列表或者記錄來定義列名,并使用嵌套列表來定義表中的數(shù)據(jù),嵌 套列表的大列表內(nèi)包含所有定義單行用的子列表,而每個子列表則用來定義一行數(shù)據(jù)?;ɡ?號{}可以用來索引查找指定行的數(shù)據(jù)。
其他數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)結(jié)構(gòu)中可以包含任意M值
計算方式
M函數(shù)的計算方式與Excel單元格相互間引用計算的方式類似,其計算順序是根據(jù)計算單元中 每個元素間的依賴關(guān)系決定的。
在M函數(shù)中還可以進(jìn)行更為復(fù)雜的元素間的引用計算。








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