Naming Your Steps: Common Table Expressions
WITH clauses that let you read a query top-to-bottom instead of inside-out — naming a subquery, chaining several, referencing one from another, and the inlining rule that changed in Postgres 12. Run against PostgreSQL 18.