datatable使用groupby進行分組統計

2021-06-04 01:12:52 字數 1668 閱讀 7003

今天有同事問,如何在datatable中進行分組,並且計算分組後每組的數量,想了一下,可以使用linq來實現datatable分組。**如下

效果區域    庫房          數量

北京---北京倉庫---1

北京---上海倉庫---1

上海---上海倉庫---2

datatable dt = new datatable("cart");

datacolumn dc1 = new datacolumn("areaid", type.gettype("system.string"));

datacolumn dc2 = new datacolumn("house", type.gettype("system.string"));

datacolumn dc3 = new datacolumn("seq", type.gettype("system.string"));

datacolumn dc4 = new datacolumn("remark", type.gettype("system.string"));

dt.columns.add(dc1);

dt.columns.add(dc2);

dt.columns.add(dc3);

dt.columns.add(dc4);

datarow dr = dt.newrow();

dr["areaid"] = "北京";

dr["house"] = "北京倉庫";

dr["seq"] = "2";

dr["remark"] = "貨到付款";

dt.rows.add(dr);

datarow dr1 = dt.newrow();

dr1["areaid"] = "北京";

dr1["house"] = "上海倉庫";

dr1["seq"] = "1";

dr1["remark"] = "貨到付款";

dt.rows.add(dr1);

datarow dr2 = dt.newrow();

dr2["areaid"] = "上海";

dr2["house"] = "上海倉庫";

dr2["seq"] = "1";

dr2["remark"] = "貨到付款";

dt.rows.add(dr2);

datarow dr3 = dt.newrow();

dr3["areaid"] = "上海";

dr3["house"] = "北京倉庫";

dr3["seq"] = "1";

dr3["remark"] = "貨到付款";

dt.rows.add(dr3);

var query = from t in dt.asenumerable()

group t by new into m

select new

;console.writeline("區域 "+"  庫房"+"   數量");

foreach (var item in query.tolist())

console.writeline(item.areaid+"---"+item.house+"---"+item.rowcount);

console.writeline("\r\n");

}

DataTable 基礎使用

html部分 id 姓名型別 手機號操作 js部分 var table mytable window.datatable table.datatable 是否開啟本地分頁 paging true,是否開啟本地排序 ordering false,是否顯示左下角資訊 info true,是否允許使用者改...

DataTable使用方式

簡單的抄段 上來把.新增加一datatable datatable dt new datatable qgf datacolumn dc new datacolumn datarow dr new datarow dc new datacolumn money gettype string dt.c...

dataTable元件使用

datatable元件使用 引入js id datatable datastype json columns 指定子段,以及這列的單元格的樣式 language 配置中文 processing 處理中 lengthmenu 顯示 menu 項結果 zerorecords 沒有匹配結果 info 顯示...