本篇內容主要講解“Linq數據分組怎么使用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Linq數據分組怎么使用”吧!
Linq數據分組(GROUP BY)
根據元素的一個或多個字段對查詢結果中的元素進行分組。例如:按年級 (class year) 對學生進行Linq數據分組:
Dim studentsByYear = From student In students _ Select student _ Group By year = student.Year _ Into Classes = Group
輸出結果的程序:
For Each yearGroup In studentsByYear Console.WriteLine(vbCrLf & "Year: " & yearGroup.year) For Each student In yearGroup.Classes Console.WriteLine(" " & student.Last & ", " & student.First) Next Next
完整語法:
Group [ listField1 [, listField2 [...] ] By keyExp1 [, keyExp2 [...] ] Into aggregateList
◆listField1, listField2 :可選。查詢變量的一個或多個字段,這些查詢變量顯式標識要包括在分組結果中的字段。如果未指定任何字段,則查詢變量的所有字段都包括在分組結果中。
◆keyExp1 :必需。一個表達式,標識用于確定元素的分組的鍵??梢灾付ǘ鄠€鍵來指定一個組合鍵。
◆keyExp2 :可選。一個或多個附加鍵,與 keyExp1 組合在一起,創建一個組合鍵。
◆aggregateList :必需。一個或多個表達式,標識如何對組進行聚合。若要為分組結果標識一個成員名稱,請使用 Group 關鍵字,該關鍵字可以:Into Group
Linq數據分組例如:
Dim ***層_分組 = From cust In db.Customers _ Group By 國家 = cust.Country _ Into 第二層_分組元素 = Group, Count() _ Order By 國家 For Each A分組 In ***層_分組 Console.WriteLine(A分組.國家 & "(" & A分組.Count & ")") For Each A元素 In A分組.第二層_分組元素 Console.WriteLine(vbTab + A元素.CompanyName + "," + A元素.ContactName) Next Next
到此,相信大家對“Linq數據分組怎么使用”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。