Let’s look at the most popular window functions.
SUM(), AVG(), COUNT(), MIN(), MAX()
These 5 are referred to as aggregate window functions. We’ve already seen these functions when we were working with GROUP BY
.
SUM()
or COUNT()
are great when we need to calculate percentage of a row value to a total. For example here’s a query that calculates revenue per country and also percentage from total revenue of the company:
WITH revenue_per_country AS ( SELECT country, SUM(amount) AS country_revenue FROM purchases p INNER JOIN users u ON p.user_id = u.id...