SQL GROUP BY is most commonly used in conjunction with aggregate procedures such as COUNT(), MAX(), MIN(), SUM(), and AVG(). It divides the result set into groups based on one or more columns, basically constructing summary rows for each group. Rather than continuous values, these groups are frequently based on categorical values.