فقرة From (Visual Basic)

تعيين متغيرات نطاق واحد أو أكثر و مجموعة لاستعلام.

From element [ As type ] In collection [ _ ]
  [, element2 [ As type2 ] In collection2 [, ... ] ]

الأجزاء

  • element
    مطلوبة. متغير النطاق يستخدم ليكرر خلال عناصر المجموعة. متغير النطاق يستخدم للإشارة إلى كل عضو في collection بينما يتكرر الاستعلام من خلال collection. يجب أن يكون نوع enumerable.

  • type
    اختياري. نوع الـ element. إذا لم تيم تحديد type , نوع ال element مستنتج من collection.

  • collection
    مطلوبة. تشير إلى المجموعة التي ستقوم باستعلامها. يجب أن يكون نوع enumerable.

ملاحظات

جملة From تستخدم لتعريف بيانات المصدر لاستعلام والمتغيرات المستخدمة للإشارة إلى عنصر ما من مجموعة المصدر. تسمى هذه المتغيرات متغيرات النطاق. جملة From مطلوب للاستعلام فيما عدا عند جملة Aggregate يتم استخدامها لتعريف استعلام الذي يقوم بإرجاع فقط النتائج المجموعة. لمزيد من المعلومات، راجع جملة التجميع (Visual Basic).

يمكنك تحديد عدة جمل From في استعلام لتعرف مجموعات متعددة لضمها. عندما يتم تعيين مجموعات متعددة فإنه يتم تكرارها بشكل مستقل أو يمكنك ربطهم إذا كان لهم علاقة ببعض . يمكنك ضم مجموعات ضمنيا باستخدام جملة Select أو بوضوح باستخدام عبارات Join أو Group Join. كبديل لذلك، يمكنك تحديد عدة متغيرات نطاق و مجموعات في جملة From مفرده مع كل متغير النطاق المرتبط و مجموعة مفصوله عن الأخرين بواسطة فاصلة. تـظهر التعليمات البرمجية في المثال التالي كلا خيارين بناء الجملة لجملة From.

' Multiple From clauses in a query.
Dim result = From var1 In collection1, var2 In collection2

' Equivalent syntax with a single From clause.
Dim result2 = From var1 In collection1
              From var2 In collection2

جملةFrom يعرّف نطاق الاستعلام والذي يشبه نطاق التكرار الحلقي For . لذلك، كل متغير النطاق element في نطاق استعلام يجب أن يكون لديه اسم فريد. لأنه يمكنك تحديد عدة جمل From لاستعلام ، جمل From اللاحقة يمكن أن تشير إلى متغيرات النطاق في جملة From جملة أو يمكنها أن تشير إلى متغيرات النطاق في جملة From سابقة. على سبيل المثال، يظهر المثال التالي جملة From متداخلة حيث أن المجموعة في الجملة الثانية تستند إلى خاصية متغير النطاق في العبارة الأولى.

Dim allOrders = From cust In GetCustomerList()
                From ord In cust.Orders
                Select ord

كل جملة From يمكن أن تتبع أية تركيبة من عبارات الاستعلام الإضافية لتنقية الاستعلام. يمكنك إجراء تعديلات دقيقة لاستعلام بالطرق التالية:

  • قم بجمع عدة مجموعات ضمنيًا باستخدام جمل From و Select , أو بوضوح باستخدام جمل Join أو Group Join.

  • استخدام عبارة Where لتصفية نتائج الاستعلام.

  • افرز النتائج باستخدام جملة Order By .

  • اجمع النتائج المتشابهة معاً باستخدام جملة Group By .

  • استخدام جملة Aggregate لتعريف الدالات التجميعية لتقييم كل نتيجة الاستعلام .

  • استخدام جملة Let لتقديم متغير التكرار بقيمة يتم تحديدها بتعبير بدلاً من مجموعة.

  • استخدم جملة Distinct لتجاهل نتائج الاستعلام المكررة.

  • حدد أجزاء من النتيجة لإرجاعها باستخدام عبارات Skip, Take, Skip While، و Take While .

مثال

يستخدم تعبير الاستعلام التالي جملة From لتعريف متغير النطاق cust لكل كائن Customer في مجموعة customers . يستخدم جملة Where متغير النطاق لتقييد الإخراج لعملاء من منطقة محددة. يعرض التكرار الحلقي For Each اسم الشركة لكل عميل في نتيجة الاستعلام.

Sub DisplayCustomersForRegion(ByVal customers As List(Of Customer),
                              ByVal region As String)

  Dim customersForRegion = From cust In customers
                           Where cust.Region = region

  For Each cust In customersForRegion
    Console.WriteLine(cust.CompanyName)
  Next
End Sub

راجع أيضًا:

المرجع

عبارة Visual Basic) For Each...Next)

عبارة Visual Basic) For...Next)

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

عبارة Visual Basic) where)

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

عبارة مميزة (Visual Basic)

عبارة Join في (Visual Basic)

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

بند Visual Basic) Order By)

عبارة الترك (Visual Basic)

عبارة Visual Basic) Skip)

عبارة يأخذ (Visual Basic)

تخطي عبارة أثناء في (Visual Basic)

بند Take While في (Visual Basic)

المبادئ

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

موارد أخرى

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