COUNT, SUM, AVG עם GROUP BY ו־HAVING
עד עכשיו כל שאילתה החזירה שורות מהטבלה. עכשיו נשאל שאלות של סיכום: כמה הזמנות שולמו? כמה כסף הכניס כל לקוח? מי הזמין יותר מפעם אחת? אלה שאלות הראיון הנפוצות ביותר אחרי JOIN, והמלכודת הקבועה בהן היא ההבדל בין WHERE לבין HAVING.
פונקציית צבירה הופכת הרבה שורות למספר אחד. GROUP BY עושה את זה לכל קבוצה בנפרד, ו־HAVING מסנן את הקבוצות.
- פונקציית צבירה
- פונקציה שמקבלת הרבה שורות ומחזירה ערך אחד, כמו COUNT, SUM או AVG.
- GROUP BY
- פסוקית שמחלקת את השורות לקבוצות לפי ערך משותף ומחזירה שורה אחת לכל קבוצה.
- HAVING
- פסוקית שמסננת קבוצות אחרי הצבירה, למשל רק קבוצות עם יותר משתי שורות.