Advanced
## Window Functions

Interactive Course

Learn how to use analytic SQL functions to deeply understand data.

SQL window functions – also known as windowing functions, OVER functions, or analytic functions – are tremendously useful. These functions make building complex aggregations much simpler. In this step-by-step tutorial, we will lead you through SQL window functions. At its end, you'll embrace this topic with ease and feel comfortable using window functions in SQL databases.

Window functions are so powerful that they serve as a dividing point in time: people talk about SQL before window functions and SQL after window functions. Because they were introduced into the standard relatively recently, these functions aren't covered in many SQL courses.

Note: Most popular database engines support window functions; MySQL is the only one that does not.

This course covers the syntax and semantics of SQL window functions. It shows how powerful they are, what the typical use cases are, and how to use ORDER BY and PARTITION BY to set up a frame for window functions. You'll also learn the difference between ROWS and RANGE clauses.

This course is intended for intermediate users. We assume the user knows the basics of SQL, including:

- How to select from a single table, including writing complex WHERE conditions
- How to JOIN tables
- How GROUP BY and HAVING work

- A web browser
- Knowledge of basic SQL, including JOINs and GROUP BY clauses

- Compute running totals and running averages
- Build rankings
- Find best and worst performers
- Investigate trends across time
- Calculate contributions to the whole, such as commission percentages

You'll also get a deeper understanding of SQL aggregate functions.

- Beginning database analysts
- Developers who want to keep their knowledge of SQL current
- Students taking classes in relational databases
- Anyone who wants to learn SQL window functions

0%

Course progress

0/218

Exercises completed

Window functions? We'll explain what it's all about.

Exercises completed

Your first encounter with window functions.

Exercises completed

Discover how you can define the function window with PARTITION BY

Exercises completed

Learn how you can rank rows with window functions.

Exercises completed

Get to know how to create sophisticated window frames for your window functions.

Exercises completed

Learn the most essential analytic functions.

Exercises completed

Create advanced statistics computed independently for various groups of rows.

Exercises completed

Do you know when window functions are evaluated in a SQL query? Let's find out.

Exercises completed

Master all the skills you acquired so far in our big practice part.

Exercises completed

Test the skills you acquired in the whole course with this final quiz.

Exercises completed