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

المجموع التراكمي

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

الإجمالي الجاري (التراكمي) هو SUM على نافذة مع ORDER BY: وهذا يحوّل التجميع إلى تجميع ينمو صفًا تلو الآخر.

SELECT day, amount,
       SUM(amount) OVER (ORDER BY day) AS running_total
FROM revenue

من دون ORDER BY تشمل النافذة كل صف، وستحصل على الإجمالي الكلي في كل سطر. أما بوجوده، فتتوسع النافذة صفًا تلو الآخر وفق ذلك الترتيب، لذا لا يرى كل صف سوى نفسه وكل ما يسبقه.

أضف PARTITION BY لإعادة تعيين المجموع التراكمي لكل مجموعة، مثلًا: المجموع التراكمي لـ revenue حسب region، يومًا بعد يوم.

challenge icon

التحدي

سهل

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

  • revenue: region، day، amount

أعد region وday وamount وregion_running_total: قيمة amount التراكمية لهذه المنطقة حتى هذا اليوم وتضمينه. يجب إعادة تعيين الإجمالي الجاري لكل منطقة.

استخدم PARTITION BY في النافذة. رتّب حسب region، ثم day.

جرّب بنفسك

SELECT region, day, amount,
       -- SUM(amount) OVER (PARTITION BY region ORDER BY day)
FROM revenue
ORDER BY region, day
quiz iconاختبر نفسك

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

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

تدرّب بنفسك: Playground لـ SQL