我正在使用C#ConoleApplication.
我有ODBC DSN连接,我带入Datatable.第一列是"帐号#".
例:
帐号------------ |
AA1 ------------------- |
AA1 ------------------- |
AA2 ------------------- |
AA3 ------------------- |
AA1 ------------------- |
AA4 ------------------- |
AA2 ------------------- |
我想弄清楚如何给出以下结果.我认为它将被整合到一个新的数据表但我不能使任何代码工作,我尝试过.
帐号------------ | OCCURENCES
AA1 ------------------- | 3
AA2 ------------------- | 2
AA3 ------------------- | 1
AA4 ------------------- | 1
请问我该怎么做?
你可以使用Linq-To-DataTable和Enumerable.GroupBy:
var accountGroups = table.AsEnumerable()
.GroupBy(row => row.Field<String>("Account#"))
.Select(grp => new { Account = grp.Key, Count = grp.Count() });
Run Code Online (Sandbox Code Playgroud)
如果你需要一个新的DataTable:
var tblAccCounts = new DataTable();
tblAccCounts.Columns.Add("Account#");
tblAccCounts.Columns.Add("Count", typeof(int));
foreach(var grp in accountGroups)
tblAccCounts.Rows.Add(grp.Account, grp.Count);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1635 次 |
| 最近记录: |