Linq数据分组全面描述

Linq有很多值得学习的地方,这里我们主要介绍Linq数据分组,包括介绍使用 Group 关键字等方面。

创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的嘉兴网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

Linq数据分组(GROUP BY)

根据元素的一个或多个字段对查询结果中的元素进行分组。例如:按年级 (class year) 对学生进行Linq数据分组:

 
 
 
  1. Dim studentsByYear = From student In students _
  2. Select student _
  3. Group By year = student.Year _
  4. Into Classes = Group

输出结果的程序:

 
 
 
  1. For Each yearGroup In studentsByYear
  2. Console.WriteLine(vbCrLf & "Year: " & yearGroup.year)
  3. For Each student In yearGroup.Classes
  4. Console.WriteLine(" " & student.Last & ", " & student.First)
  5. Next
  6. Next

完整语法:

 
 
 
  1. Group [ listField1 [, listField2 [...] ] By keyExp1 [, keyExp2 [...] ]
  2. Into aggregateList

◆listField1, listField2 :可选。查询变量的一个或多个字段,这些查询变量显式标识要包括在分组结果中的字段。如果未指定任何字段,则查询变量的所有字段都包括在分组结果中。

◆keyExp1 :必需。一个表达式,标识用于确定元素的分组的键。可以指定多个键来指定一个组合键。

◆keyExp2 :可选。一个或多个附加键,与 keyExp1 组合在一起,创建一个组合键。

◆aggregateList :必需。一个或多个表达式,标识如何对组进行聚合。若要为分组结果标识一个成员名称,请使用 Group 关键字,该关键字可以:Into Group

Linq数据分组例如:

 
 
 
  1. Dim ***层_分组 = From cust In db.Customers _
  2. Group By 国家 = cust.Country _
  3. Into 第二层_分组元素 = Group, Count() _
  4. Order By 国家
  5. For Each A分组 In ***层_分组
  6. Console.WriteLine(A分组.国家 & "(" & A分组.Count & ")")
  7. For Each A元素 In A分组.第二层_分组元素
  8. Console.WriteLine(vbTab + A元素.CompanyName + "," + A元素.ContactName)
  9. Next
  10. Next

当前文章:Linq数据分组全面描述
URL网址:http://www.shufengxianlan.com/qtweb/news29/194379.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联