weixin_40187983
weixin_40187983
2019-05-31 17:40
采纳率: 73.6%
浏览 904

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

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

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

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

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

图片说明

图片说明

图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • caozhy
    已采纳
    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
    手写的,不对的话给你修改
    
    点赞 评论

相关推荐