احسب المجاميع والمتوسطات والإحصاءات لكل مجموعة باستخدام دوال التجميع وGROUP BY.
افتح هذا الدرس في Kodokonتأخذ دالة التجميع عدة صفوف كمدخل وتُرجِع قيمة واحدة: مجموعًا، أو متوسطًا، أو حدًا أدنى... وأبسطها COUNT(*)، التي تعدّ الصفوف. وتتكامل بشكل طبيعي مع WHERE: تصفّي قاعدة البيانات أولًا، ثم تعدّ.
SELECT COUNT(*) FROM books;
SELECT COUNT(*) FROM books WHERE genre = 'sf';تُطبَّق دوال التجميع الأساسية الأخرى على عمود: يجمع SUM(price)، ويحسب AVG(price) المتوسط، ويجد MIN(year) وMAX(year) أصغر القيم وأكبرها. وتمنح الكلمة المفتاحية AS اسمًا بديلًا (alias)، أي اسمًا سهل القراءة للعمود المحسوب.
SELECT SUM(price) AS total FROM books;
SELECT AVG(price) AS avg_sf
FROM books
WHERE genre = 'sf';
SELECT MIN(year), MAX(year) FROM books;وللحصول على إحصائية لكل فئة؟ ذلك هو دور GROUP BY: تجمّع قاعدة البيانات الصفوف التي تتشارك القيمة نفسها (النوع هنا)، ثم تطبّق دالة التجميع على كل مجموعة. وتحتوي النتيجة على صف واحد لكل مجموعة.
SELECT genre, COUNT(*) AS nb
FROM books
GROUP BY genre;
SELECT genre, AVG(price) AS avg_price
FROM books
GROUP BY genre;