IMO window functions are the most advanced part of SQL. It’s such a complex though powerful construct. Window functions are the last milestone on your way to become an advanced SQL user. The rest is practice, practice and more practice
Let’s take a look at the query from the last lesson. It adds numbers to users’ accounts so we can get the first account (or a signup account) of a user:
SELECT *, ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY created_at ASC) AS account_number FROM accounts ORDER BY user_id ASC, created_at ASC
ROW_NUMBER()
...