Field note · November 12, 2025

Course note — Window functions, properly

The single highest-leverage thing to learn in SQL. Running totals, rankings, period-over-period, deduplication, sessionisation — all of it collapses into one construct.

1 min read ·Analytics engineering ·practice

Revised Window functions, properly this week. The change was small and the reason was not.

The single highest-leverage thing to learn in SQL. Running totals, rankings, period-over-period, deduplication, sessionisation — all of it collapses into one construct.

The first draft explained the mechanism and stopped. What was missing was the failure: the thing that happens when you get it wrong, described concretely enough that someone recognises it later. A lesson that only teaches the correct version leaves you unable to spot the incorrect one, which is the situation you will actually be in.

It sits in the SQL that survives production module, and the exercise runs against ride-hail-trips. That pairing is deliberate: the dataset was built with the trap the lesson describes already in it, so the exercise fails in the instructive way rather than the confusing one.

Ordering matters here more than in most courses. It follows Joins that do not fan out and leads into Writing SQL people can read, and reading the plan, and reading it out of sequence mostly works but costs you the setup.

Free means free, and it also means we can rewrite it whenever it is wrong. No edition, no errata PDF, nothing to repurchase. The whole course is 36 lessons and the fixes land the day we find them.