建立表的幾種方式(語法總結)

2021-10-10 14:47:25 字數 2053 閱讀 3056

小夥伴們好啊,今天和大家說說用m和dax建立表的幾種方式。

我們需要建立的**如下:

首先來看一種最常用的方式:

方法一:使用datatable建立,實現的**如下:

employees_1 =

datatable (

"name", string,

"age", integer,

"gender", boolean,

"date of birth", datetime,,}

)

該函式的語法如下:

datatable( , [, , [, ...] ], )

前面的引數成對出現,分別指明欄位名稱和資料型別。整個data部分用{}包裹,每條記錄再次用{}分割。

方法二:selectcolumns + {}

dax中的表的構造符為{},直接輸入,我們可以得到一張單列空表。每行紀錄用小括號分割,每行記錄中的每個字段內容用逗號分割。在不考慮標題名稱前提下,可以嘗試以下**:

employees_2 =

效果如下:

不指定其名稱,列的標題將會預設生成,value1,value2,value3…標題名稱修改可以通過selectcolumns實現,最終**如下:

employees_2 =

var data =

return

selectcolumns (

data,

"name", [value1],

"age", [value2],

"gender", [value3],

"date of birth", [value4]

)

效果和方法1.1一致,區別在於省去了指定資料型別的步驟,稍微簡潔些。

方法一:#table(columns as any, rows as any ) as any

let

源 = #table(,,

})in 源

效果如下:

該函式有兩個引數,一參指定字段標題名稱,二參內層每個list中是具體資料,最後用乙個大的list包裹。

細心的小夥伴會發現此時每個欄位的資料型別是any。dax在建立表的時候可以指定資料型別,m語言可以嗎?可以,不過**要長一些:

let

源 = #table(

type table[ name = text, age = number, gender = logical, date of birth = datetime],,}

)in 源

此時各字段的資料型別已經指定,無需新增新的步驟。

方法二: table.fromrecords

let

源 = table.fromrecords(

//, type table[ name = text, age = number, gender = logical, date of birth = datetime] 指定資料型別

)in 源

因為records由鍵值對構成,本身已包含欄位名稱,所以不再需要我們單獨指定欄位名稱。如果需要在建表的時候指定資料型別,同樣需要借助二參實現。(注釋部分)

m語言table可以由records和list轉換而來,所以構建表的方式多種多樣。除了上面提到的方法,還有:

Hive建立表的幾種方式

hive執行的三種方式 1.用hive cli 2.終端執行hive命令 hive e hive語句 3.終端執行hive指令碼 hive f hive指令碼 如果需要通過jdbc來連線hive,需要在終端開啟hiveserver2服務 nohup hive service hiveserver2 ...

Power BI建立日期表的幾種方式概覽

日環比 用這個 日期表 addcolumns calendar date 2020,1,1 date 2020,8,31 年度 year date 季度 q format date q 月份 format date mm 日 format date dd 年度季度 format date yyyy ...

建立物件的幾種方式

原文章 var person new object person.name kevin person.age 31 alert person.name alert person name alert person.name alert person 5 返回帶有屬性和方法的person物件 func...