vb.net DataTable 使用类似SQL语法的Group by-线上等

这个表格是DataTable,不是来自SQL的数据

请问如何写类似SQL的语法,将表格变成希望结果呢

Select 省,城市,sum(金额) from table
group by 省,城市 order by 金额 desc

这个语法在datatable上来写出一样的效果

图片说明

图片说明

图片说明

Dim query = dataTable.Rows.Cast(OfType DataRow)()
.GroupBy(Function(x) x("省") & "," & x("城市"))
.Select(Function(x)  New With {.省 = x.Key.Split(",")(0), .城市 =  x.Key.Split(",")(1), .金额 = x.Select(Function(y) Val(y("金额"))).Sum() })
For Each x In Query
MsgBox(x.省 + x,城市 + " " + x.金额.ToString())
Next
手写的,不对的话给你修改