Previous Page
Next Page

Understanding Data Grouping

In the previous chapter, you learned that the SQL aggregate functions can be used to summarize data. This enables you to count rows, calculate sums and averages, and obtain high and low values without having to retrieve all the data.

All the calculations thus far were performed on all the data in a table or on data that matched a specific WHERE clause. As a reminder, the following example returns the number of products offered by vendor 1003:

Input

SELECT COUNT(*) AS num_prods
FROM products
WHERE vend_id = 1003;

Output

+-----------+
| num_prods |
+-----------+
|         7 |
+-----------+

But what if you want to return the number of products offered by each vendor? Or products offered by vendors who offer a single product, or only those who offer more than 10 products?

This is where groups come into play. Grouping enables you to divide data into logical sets so you can perform aggregate calculations on each group.


Previous Page
Next Page