Cho phép nhóm hay gộp các dữ liệu trong một nhóm dựa vào một hay vài thuộc tính chung. Các toán tử thuộc nhóm nhóm gồm:

Toán tử Mô tả Cú pháp C# Cú pháp VB
GroupBy Tổ chức dữ liệu thành các nhóm và trả về chúng như một tập IEnumerable của kiểu IGrouping<key, element> group…by hay

group…by …into

Group…by…

Into…

ToLookup Thực hiện thao tác nhóm trong đó một chuỗi các cặp khoá được trả về. Không hỗ trợ Không hỗ trợ

 

Ví dụ với C#: hiển thị danh sách số chẵn (even numbers) và số lẻ (odd numbers)


List<int> numbers = new List<int>() { 35, 44, 200, 84, 3987, 4, 199, 329, 446, 208 };

IEnumerable<IGrouping<int, int>> query = 

     from number in numbers

     group number by number % 2;

foreach (var group in query)

{

  Console.WriteLine(group.Key == 0 ? "\nEven numbers:" : "\nOdd numbers:");

  foreach (int i in group)

    Console.WriteLine(i);

}

Trong LINQPad

Ví dụ với VB: hiển thị danh sách số chẵn (even numbers) và số lẻ (odd numbers)


Dim numbers As New System.Collections.Generic.List(Of Integer)(

  New Integer() {35, 44, 200, 84, 3987, 4, 199, 329, 446, 208})

Dim query = From number In numbers

     Group By Remainder = (number Mod 2) Into Group

For Each group In query

   Console.WriteLine(If(group.Remainder = 0, "Even numbers:", "Odd numbers:"))

   For Each num In group.Group

     Console.WriteLine(num)

   Next

Next

Trong LINQPad

< Các toán tử truy vấn