مجموعة بواسطة عبارة (Visual Basic)

تجميع العناصر لنتيجة استعلام. يمكن استخدامها أيضا في تطبيق الدالات التجميعية لكل مجموعة. عملية التجميع تعتمد على مفتاح أو أكثر.

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

الأجزاء

  • listField1, listField2
    اختياري. حقل واحد أو أكثر من متغير الاستعلام أو المتغيرات التي تعرف بشكل واضح الحقول المراد تضمينها في النتيجة المجمعة. إذا تم تحديد أية حقول, يتم اضافة كل الحقول من متغير الاستعلام أو المتغيرات في النتيجة المجمعة.

  • keyExp1
    مطلوبة. تعبير يحدد المفتاح لاستخدامه لتحديد مجموعات العناصر. يمكنك تحديد أكثر من مفتاح واحد لتحديد مفتاح مركب.

  • keyExp2
    اختياري. مفتاح أو أكثر إضافي تم تركيبها مع keyExp1 لإنشاء مفتاح مركب.

  • aggregateList
    مطلوبة. تعبير أو أكثر التي تعرف كيفية تجميع المجموعات. لتعريف اسم عضو لنتائج المجمعة استخدم Group الكلمة الأساسية, والتي يمكن أن تكون أحد الأشكال التالية:

    Into Group
    

    يمكنك أيضاً تضمين دالات التجميع لتطبيقها إلى المجموعة.

ملاحظات

يمكنك استخدام Group By الجملة لقطع نتائج استعلام الى مجموعات. يـستند التجميع على مفتاح أو مفتاح مركب يتكون من عدة مفاتيح. يتم اضافة العناصر التي تقترن مع قيم مفتاح مطابقة في نفس المجموعة.

استخدم aggregateList المعلمة لـ Into الجملة و Group الكلمة الأساسية لتعريف اسم العضو المستخدمة للاشارة إلى المجموعة. يمكنك أيضاً تضمين الدالات التجميعية في Into الجملة لحساب القيم للعناصر المجمعة. للحصول على قائمة دالات التجميع القياسية, راجع جملة التجميع (Visual Basic).

مثال

مثال الـتعليمات البرمجية التالي يجمع قائمة من العملاء استناداً إلى موقعهم (Country) ويوفر عدد العملاء في كل مجموعة. يتم ترتيب النتائج حسب اسم البلد. يتم ترتيب النتائج المجمعة حسب اسم المدينة.

Public Sub GroupBySample()
  Dim customers = GetCustomerList()

  Dim customersByCountry = From cust In customers
                           Order By cust.City
                           Group By CountryName = cust.Country
                           Into RegionalCustomers = Group, Count()
                           Order By CountryName

  For Each country In customersByCountry
    Console.WriteLine(country.CountryName &
                      " (" & country.Count & ")" & vbCrLf)

    For Each customer In country.RegionalCustomers
      Console.WriteLine(vbTab & customer.CompanyName &
                        " (" & customer.City & ")")
    Next
  Next
End Sub

راجع أيضًا:

المرجع

تحديد العبارة (Visual Basic)

فقرة From (Visual Basic)

بند Visual Basic) Order By)

جملة التجميع (Visual Basic)

عبارة ربط مجموعة (Visual Basic)

المبادئ

مقدمة حول LINQ في Visual Basic

موارد أخرى

استعلامات (Visual Basic)