Let's say we have a database table named orders with columns: id, name, and cost.
In our application we might want to find the average cost of all orders, this is a perfect use case for the AVG aggregate function. Here's what our query would look like:
SELECT AVG(cost) as average_cost FROM orders
And here's the result:
But we can take this even further, what if we wanted to get an average of each persons orders? We can alter our select to include the order name and then grouping on it. So our new query looks like this:
SELECT name, AVG(cost) as average_cost FROM orders GROUP BY name;
And this is our result: