عمليات تجميع LINQ
عملية التجميع تحسب قيمة واحدة من مجموعة من القيم. مثال لعملية التجميع هو حساب متوسط درجة الحرارة اليومية من قيم درجات الحرارة اليومية لشهر.
يبين الرسم التوضيحي التالي نتائج عمليتان تجميع مختلفة على تسلسل أرقام. العملية الأولى تجمع الأرقام. العملية الثانية تقوم بإرجاع القيمة القصوى في التسلسل.
يتم سرد أساليب مشغل الاستعلامات القياسي التي تنفذ عمليات تجميع في المقطع التالي.
الأساليب
اسم الأسلوب |
الوصف |
تعبير استعلام بناء جمل #C |
تعبير استعلام Visual Basicلبناء جمل #C |
معلومات إضافية |
---|---|---|---|---|
تجميع |
ينفذ عملية تجميع مخصصة على قيم مجموعة. |
غير متوفر. |
غير متوفر. |
|
المتوسط |
يقوم بحساب القيمة المتوسطة لمجموعة من القيم. |
غير متوفر. |
Aggregate … In … Into Average() |
|
تعداد |
يقوم بحساب العناصر في مجموعة، اختياريا فقط تلك العناصر التي تلبي وظيفة المسند. |
غير متوفر. |
Aggregate … In … Into Count() |
|
LongCount |
يقوم بحساب العناصر في مجموعة كبيرة، اختياريا فقط تلك العناصر التي تلبي وظيفة المسند. |
غير متوفر. |
Aggregate … In … Into LongCount() |
|
Max |
تحدد أقصى قيمة في مجموعة. |
غير متوفر. |
Aggregate … In … Into Max() |
|
Min |
تحدد أدنى قيمة في مجموعة. |
غير متوفر. |
Aggregate … In … Into Min() |
|
Sum |
تحسب مجموع القيم في مجموعة. |
غير متوفر. |
Aggregate … In … Into Sum() |
أمثلة تعبير استعلام بناء الجملة
المتوسط
مثال التعليمات البرمجية التالي يستخدم البند Aggregate Into Average في Visual Basic لحساب متوسط درجة الحرارة في صفيف أرقام يمثل درجات الحرارة.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim avg = Aggregate temp In temperatures Into Average()
' Display the result.
MsgBox(avg)
' This code produces the following output:
' 76.65
تعداد
مثال التعليمات البرمجية يستخدم البند Aggregate Into Count في Visual Basic لحساب عدد القيم في صفيف التي هي أكبر من أو تساوي 80.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim highTemps As Integer = Aggregate temp In temperatures Into Count(temp >= 80)
' Display the result.
MsgBox(highTemps)
' This code produces the following output:
' 3
LongCount
مثال التعليمات البرمجية التالي يستخدم البند Aggregate Into LongCount في Visual Basic لحساب عدد القيم في صفيف.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim numTemps As Long = Aggregate temp In temperatures Into LongCount()
' Display the result.
MsgBox(numTemps)
' This code produces the following output:
' 6
Max
مثال التعليمات البرمجية التالي يستخدم البند Aggregate Into Max في Visual Basic لحساب أعلى درجة حرارة في صفيف أرقام يمثل درجات الحرارة.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim maxTemp = Aggregate temp In temperatures Into Max()
' Display the result.
MsgBox(maxTemp)
' This code produces the following output:
' 88.6
Min
مثال التعليمات البرمجية التالي يستخدم البند Aggregate Into Min في Visual Basic لحساب أدنى درجة حرارة في صفيف أرقام يمثل درجات الحرارة.
Dim temperatures() As Double = {72.0, 81.5, 69.3, 88.6, 80.0, 68.5}
Dim minTemp = Aggregate temp In temperatures Into Min()
' Display the result.
MsgBox(minTemp)
' This code produces the following output:
' 68.5
Sum
يستخدم مثال التعليمات البرمجية التالي البند Aggregate Into Sum في Visual Basic لحساب مقدار المصاريف الإجمالية من صفيف قيم يمثل المصاريف.
Dim expenses() As Double = {560.0, 300.0, 1080.5, 29.95, 64.75, 200.0}
Dim totalExpense = Aggregate expense In expenses Into Sum()
' Display the result.
MsgBox(totalExpense)
' This code produces the following output:
' 2235.2
لمزيد حول كيفية تنفيذ عمليات تجميع
راجع أيضًا:
المرجع
عبارة التجميعية (Visual Basic)