Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

عملية Modulo

جزء من قسم الأساسيات في رحلة SQL على Coddy — الدرس 25 من 72.

يخبرك عامل باقي القسمة % بما يتبقى بعد قسمة رقم على آخر.

dividend % divisor
  • dividend: العدد الذي يتم تقسيمه.
  • divisor: العدد الذي يقسم المقسوم.

على سبيل المثال

10 % 3

هنا، يتم تقسيم 10 على 3. الرقم 3 يتكرر في 10 ثلاث مرات، مع بقاء 1. لذا، ستكون قيمة result هي 1.

عادةً ما يُستخدم المعامل modulo للتحقق مما إذا كان الرقم زوجيًا أم فرديًا:

  • إذا كان الرقم زوجيًا، فإن قسمته على 2 ستترك باقيًا قدره 0.
  • إذا كان الرقم فرديًا، فإن قسمته على 2 ستترك باقيًا قدره 1.

على سبيل المثال، ابحث عن الصفوف ذات الأرقام الزوجية:

SELECT * FROM table WHERE id % 2 = 0;

أو للتنقل بشكل دوري عبر القيم:

  • number % 12 (تعيد 0-11)
  • number % 8 (تعيد 0-7)

على سبيل المثال، قم بتجميع العناصر في مجموعات مكونة من 5:

SELECT item_number % 5 as group_number FROM inventory;
challenge icon

التحدي

سهل

الجداول والأعمدة المتاحة:

  • <strong>products</strong>: <strong>id</strong>, <strong>price</strong>, quantity

أنشئ استعلاماً يقوم بما يلي:

  1. يعرض معرف المنتج (product ID)
  2. يخصص كل منتج لواحد من ثلاثة فرق لمراقبة الجودة (0، 1، أو 2) بناءً على معرف المنتج باستخدام عامل المودولو (modulo operator)، وقم بتسمية هذا العمود باسم quality_control
  3. يتضمن فقط المنتجات التي يحتوي فيها عمود الكمية (quantity) على رقم فردي (على سبيل المثال، 1، 3، 5، 7...)

ورقة مرجعية

يعيد عامل باقي القسمة (modulo) % القيمة المتبقية بعد عملية القسمة:

dividend % divisor

الاستخدامات الشائعة:

  • التحقق من الأرقام الزوجية/الفردية: number % 2 = 0 (زوجي) أو number % 2 = 1 (فردي)
  • التنقل الدوري عبر القيم: number % 12 يعيد القيم من 0 إلى 11
  • تجميع العناصر: item_number % 5 ينشئ مجموعات من 0 إلى 4

أمثلة:

-- البحث عن الصفوف ذات الأرقام الزوجية
SELECT * FROM table WHERE id % 2 = 0;

-- تجميع العناصر في مجموعات مكونة من 5
SELECT item_number % 5 as group_number FROM inventory;

جرّب بنفسك

quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات