A window function is an advanced SQL concept that enables you to maximize efficiency and minimize the complexity of queries that analyze partitions (windows), subgroups or sections of a data set. In this online course, you'll learn how to build complex aggregations with PostgreSQL window functions: OVER, RANK, PARTITION BY. Note: This is the only online course on PostgreSQL window functions you can find on the Internet.
This online course will be of interest to database analysts, students, developers, and more. The prerequisite for the course is knowing the basics of SQL. Scroll down for more details.
Window functions (also known as analytic functions or OVER functions) are a very useful tool, especially when it comes to data aggregation. PostgreSQL's documentation describes the concept of window functions rather well:
A window function performs a calculation across a set of table rows that are somehow related to the current row. This is comparable to the type of calculation that can be done with an aggregate function. But unlike regular aggregate functions, the use of a window function does not cause rows to become grouped into a single output row – the rows retain their separate identities. Behind the scenes, the window function is able to access more than just the current row of the query result.
These functions were introduced into the standard relatively recently, and that's why there are not many online courses that cover this concept. Fortunately, this course does!
This online course covers the syntax and semantics of PostgreSQL window functions and showcases how tremendously powerful they are. After you complete the course, you'll know the typical use cases of window functions, how to use OVER, ORDER BY and PARTITION BY to structure a frame, and the difference between ROWS and RANGE clauses.
RANGE OVER PostgreSQL window functions and crack complex aggregations today!
Window functions? We'll explain what it's all about.
Your first encounter with window functions.
Discover how you can define the function window with PARTITION BY
Learn how you can rank rows with window functions.
Get to know how to create sophisticated window frames for your window functions.
Learn the most essential analytic functions.
LEAD and LAG
FIRST_VALUE, LAST_VALUE, NTH_VALUE
Create advanced statistics computed independently for various groups of rows.
PARTITION BY ORDER BY with ranking
PARTITION BY ORDER BY with analytical functions
Do you know when window functions are evaluated in a PostgreSQL query? Let's find out.
When window functions are evaluated
Window functions and GROUP BY
Master all the skills you acquired so far in our big practice part.
ORDER BY PARTITION BY
Test the skills you acquired in the whole course with this final quiz.