Back to articles list Articles Cookbook
6 minutes read

How to Practice SQL Window Functions Online

Learn and practice SQL window functions from the comfort of your home! Here’s how to do it.

The last few years have shown that working from home has many benefits over the daily  commute. No wonder people are reluctant to go back to the office! They have much more time while doing the same work. What do you do with the extra time? Whatever you want. It’s your time! But if you’re a data analyst or want to become one, it might be wise to learn and practice SQL window functions. 

Practicing SQL (and learning new things about it) keeps your brain and fingers active. And you’re learning a new skill from the comfort of your home! Sounds awesome! But how do you do it?

There are several ways, but let’s first discuss who should learn SQL’s window functions and why.

What Are SQL Window Functions?

Window functions are a relatively new feature that was introduced with SQL 2003. PostgreSQL added support for them in 2009 (v. 8.4) and MySQL in 2018 (v. 8).

Window functions get their name because they work on a “window” or subset of the data. Window functions take values from multiple rows and return the calculation result for each row. This may sound similar to aggregate functions. Unlike them, window functions don’t collapse the individual rows; they add the calculated result to the existing rows in a new column. You can read more about window functions in our article What Are Window Functions in SQL.

In fact, SQL window functions are crucial if you are serious about a career in data-related jobs.

How Are SQL Window Functions Helpful?

The window functions are divided into four main groups:

  1. Ranking Functions – Assign a rank to each row in the dataset. You can read about ranking rows in SQL here.
  2. Analytic Functions – Allow you to access the values of the previous or following rows (in relation to the current row). They can also return the first or last value and divide rows into (close to) equal groups. You can read more about using analytic functions in this article.
  3. Aggregate Functions – Regular aggregate functions can be used as window functions. Most commonly, you can count the values in the window, sum them, or find their average, minimum, and maximum values. Since these are window functions, you can do this using one or several grouping criteria.
  4. Distribution Functions – Calculate the cumulative or relative rank of a value within the dataset.

Knowing SQL Window Functions makes writing complex reports easier. They can help you rank data, compute the difference between rows, analyze time series data, make time period comparisons (i.e. year-to-year, quarter-to-quarter, month-to-month), and so on.

Who should learn window functions? They are perfect for all data analysts who work with SQL. If you want to claim the title of SQL expert and raise your reporting to a new level, then window functions are for you.

How to Practice SQL Window Functions Online

Learning window functions might be difficult, but not because they’re impenetrable. No, the reason is that typical SQL courses don’t usually include window functions. Honestly, it's hard to understand why some developers of interactive SQL courses skip this topic. This is something that significantly improves data analysis and makes reporting more effective.

Yes, we said typical SQL online courses skip window functions. But not all of them omit this topic. And certainly not ours! Here are some online courses you can take to learn and practice SQL window functions.

1. Learn SQL Window Functions Interactive Course

We recommend our Window Functions course to data analysts who don’t know SQL window functions or who would like to refresh their knowledge. This is an interactive course with 218 exercises. Here you’ll learn window function syntax and which ‘regular’ functions you can use as window functions – aggregate functions, ranking functions, and analytical functions.

The exercises are designed with the data analysts’ daily tasks in mind. No generic examples and no leaving you questioning how to apply what you learned in real life. There are no abstract syntax discussions, only useful examples. The point is to learn through practice in a realistic environment.

If you really want to deeply understand data – this course is for you! You don't have to take my word for it. Thousands of users have already completed the course; looking through their comments and testimonials, it’s clear they were very happy with it.

2. Window Functions Practice Set

If you already know window functions and you’re looking for more practice, we recommend our Window Functions Practice Set course. We designed it to give you the opportunity to practice window functions. Like the first course, its 100 exercises revolve around realistic business problems.

The course is divided into three parts, with each part offering different datasets. You will analyze sales data in a fictional store in the first part. The second part has data from track running competitions.

In the third and final part, you analyze traffic and conversion data from an online pet store website.

All three datasets were chosen to closely resemble the datasets analysts often work with. For example, every business has some ‘store’ elements: customers, products/services, categories, sales data, etc.

The running dataset makes you rank the athletes, find the difference between the first and last runner in a competition, etc. This can easily be transferred to any business. As a data analyst, you’ll probably do a lot of ranking.

When you analyze traffic and conversion data, you will learn to find insights from the monthly or seasonal traffic changes. You'll often take on all these tasks (or very similar ones) at work.

3. Monthly SQL Practice Course

This is a special offer! Each month, we offer a new SQL practice course, alternating between basic and advanced SQL levels. Each monthly practice course is short, with 8-12 SQL exercises.

The theme of the January 2023 SQL Practice is window functions. If you need even more window functions practice or want to quickly assess your knowledge level, check it out.

One more suggestion before we leave you on your own.

Bonus: SQL Window Functions Cheat Sheet

This is a little bit different, but equally important. The Window Functions Cheat Sheet summarizes SQL window functions syntax and explains the different window functions. It’s a great help if you want to understand window functions basics or remind yourself how they work. It’s packed with visualizations that explain everything in a straightforward yet comprehensive way. Besides general explanations, each function is demonstrated in a practical example.

You can look the Cheat Sheet up on our website or download it as a PDF file. It can be a handy tool when you go through our courses and write your own window function queries. If you like it, feel free to share it with others on LinkedIn, Twitter, or Facebook. We appreciate your help in spreading SQL knowledge!

With all these resources, there’s no excuse not to learn window functions! You won’t regret it!

Time to Learn SQL Window Functions!

All four options for learning SQL window functions are based on giving you practical knowledge. What’s the point of a data analyst that knows window functions but can’t use them in everyday work? We avoid that by teaching you using real-life examples and making you write your own code – a more effective way of helping you understand and retain knowledge.

The beginning is always the hardest. So we suggest you start now and quickly leave the hardest part behind!