GROUPING
(day, month, year)، ويحسب المجاميع الفرعية عند كل مستوى من مستويات التجميع ثم المجموع الكلي. أما CUBE فيحسب المجاميع الفرعية لجميع التركيبات الممكنة للأعمدة المحددة. وتحدّد GROUPING أيّ الصفوف التي يعيدها ROLLUP أو CUBE هي تجميعات عليا، وأيّها صفوف كان سيعيدها GROUP BY من دون تعديل.
تأخذ الدالة GROUPING عدة أعمدة كوسيط، وتُرجع قناع بتات.
- تشير
1إلى أن الصف الذي يعيده معدّلROLLUPأوCUBEلـGROUP BYهو مجموع فرعي - تشير
0إلى أن الصف الذي يعيدهROLLUPأوCUBEهو صف ليس مجموعًا فرعيًا
GROUPING SETS
تحميل بيانات تجريبية
استعلامات بسيطة
مقارنة عدة عبارات GROUP BY مع GROUPING SETS
مقارنة CUBE مع GROUPING SETS
CUBE(datacenter,distro,version)، تدرجًا هرميًا قد لا يكون منطقيًا. فلا معنى للنظر إلى إصدار عبر التوزيعتين، لأن Arch وRHEL لا يتبعان دورة إصدارات واحدة ولا معايير تسمية الإصدارات نفسها. ويُعد مثال GROUPING SETS الوارد بعد هذا المثال أنسب، لأنه يجمع distro وversion في المجموعة نفسها.
قد لا يكون للإصدار في المثال أعلاه معنى واضح إذا لم يكن مرتبطًا بتوزيعة. ولو كنّا نتتبّع إصدار النواة، فقد يكون ذلك منطقيًا لأن إصدار النواة يمكن أن يرتبط بأيٍّ من التوزيعتين. لذا قد يكون استخدام GROUPING SETS، كما في المثال التالي، خيارًا أفضل.