الدالة Partition

هام: تمت ترجمة هذه المقالة ترجمة آلية، راجع إقرار إخلاء المسؤولية. يرجى الاطلاع على النسخة الإنجليزية من هذه المقالة. هنا للرجوع إليها.

تقوم بإرجاع متغير (سلسلة أحرف) يشير إلى موضع الرقم داخل سلسلة من النطاقات المحسوبة.

بناء الجملة

Partition( number, start, stop, interval)‎

يحتوي بناء جمله الداله قسم علي الوسيطات التاليه:

الوسيطة

الوصف

number

مطلوبة. عدد صحيح تريد تقييمه في مقابل النطاقات.

start

مطلوبة. عدد صحيح يمثل بداية لنطاق الأرقام الكلي. ويتعذر أن يكون الرقم أقل من 0.

stop

مطلوبة. عدد صحيح يمثل نهاية نطاق الأرقام الكلي. ويتعذر أن يساوي هذا الرقم قيمة رقم البداية start أو أقل منه.

interval

مطلوب. عدد صحيح يحدد حجم الاقسام الموجوده داخل النطاق الكلي ل# الارقام (بين بدء و sاعلي).


ملاحظات

تحدد الدالة Partition نطاق معيّن يقع فيه number وتقوم بإرجاع متغير (سلسلة أحرف) يصف هذا النطاق. وتكون الدالة Partition ذات فائدة كبيرة في الاستعلامات. يمكنك إنشاء استعلام تحديد يعرض عدد الطلبات الموجودة في نطاقات مختلفة، على سبيل المثال، قيم الطلبات من 1 إلى 1000 و1001 إلى 2000، وهكذا.

يعرض الجدول التالي كيفية تحديد النطاقات باستخدام ثلاث مجموعات من الوسيطات start وstop وinterval. يعرض العمودان "النطاق الأول" و"النطاق الأخير" ما الذي يتم إرجاعه بواسطة Partition. ويتم تمثيل النطاقات بواسطة قيم دنيا:قيم عليا، حيث يتم فصل النهاية الدنيا (lowervalue) الخاصة بالنطاق عن النهاية العليا (uppervalue) الخاصة بالنطاق باستخدام النقطتين (:).

start

stop

interval

قبل الأول

النطاق الأول

النطاق الأخير

بعد الأخير

0

99

5

" :-1"

" 0:4"

" 95:99"

" 100: "

20

199

10

" : 19"

" 20:29"

" 190:199"

" 200: "

100

1010

20

" : 99"

" 100: 119"

" 1000: 1010"

" 1011: "


في الجدول المعروض أعلاه، يُظهر السطر الثالث النتيجة عند تعريف start وstop لمجموعة من الأرقام التي يتعذر قسمتها بالتساوي بواسطة interval. يمتد النطاق الأخير إلى stop (11 رقم) بالرغم من أن interval تساوي 20.

تقوم دالة Partition عند الضرورة بإرجاع نطاق يتضمن مسافات إضافية كافية بحيث يوجد إلى يسار أو إلى يمين الشارحة نفس عدد الأحرف الموجود في stop، مع إضافة حرف. ويؤكد ذلك، إنك إذا قمت باستخدام Partition مع أرقام أخرى، سيتم معالجة النص الناتج بشكل مناسب أثناء أي عملية فرز تالية.

إذا بلغ عدد أحرف interval 1، فيكون النطاق هو number:number، بصرف النظر عن الوسيطتين start وstop. على سبيل المثال، إذا كان عدد أحرف interval‏ 1 وعدد أحرف number‏ 100 وعدد أحرف stop‏ 1000، تقوم دالة Partition بإرجاع " 100: 100".

اذا كان اي من الاجزاء يتم Null، القسم ارجاع Null.

مثال

يفترض هذا المثال وجود جدول Orders "الطلبات" الذي يحتوي على الحقل Freight "شحن". يقوم بإنشاء إجراء تحديد يحسب عدد الطلبات التي وصلت فيها تكلفة الشحن إلى قيمة معيّنة تدخل كل منها في نطاق معيّن. تستخدم الدالة Partition أولاً لإنشاء هذه النطاقات، ثم تقوم الدالة SQL Count بحساب عدد الطلبات في كل نطاق. في هذا المثال، تكون وسيطات الدالة Partition هي start = 0 وstop = 500 وinterval = 50. ومن ثم يكون النطاق الأول من 0 إلى 49، وهكذا حتى 500.

SELECT DISTINCTROW Partition([freight],0, 500, 50) AS Range,
Count(Orders.Freight) AS Count
FROM Orders
GROUP BY Partition([freight],0,500,50);

ملاحظة: إقرار إخلاء المسؤولية للترجمة الآلية: تمت ترجمة هذه المقالة بواسطة نظام كمبيوتر دون تدخل العامل البشري. توفر Microsoft هذه الترجمات الآلية لمساعدة المستخدمين الذين لا يتحدثون الإنجليزية على استخدام منتجات Microsoft، وخدماتها، وتقنياتها والاستمتاع بها. قد تحتوي هذه المقالة على أخطاء في المفردات، أو بناء الجملة، أو القواعد نظرًا لترجمتها آليًا.

مشاركة Facebook Facebook Twitter Twitter البريد الإلكتروني البريد الإلكتروني

هل كانت المعلومات مفيدة؟

رائع! هل لديك أي ملاحظات أخرى؟

كيف يمكننا تحسين ذلك؟

نشكرك على ملاحظاتك!

×