- Chp 1: Introduction to Databases and the Relational Model
- Chp 2: Getting Setup
- Chp 3: Query Fundamentals
- Select From
- Derived Columns
- Filtering with Where
- And, Or & Not
- NULL handling
- In, Between & Like
- Ordery By
- SQL Order of Execution
- Limit & Offset
- Distinct
- Case Expressions
- Chp 4: Aggregate Functions and Grouping
- Common Aggregate Functions
- Group By & Having
- Case Expressions & Aggregations
- Chp 5: Understanding Date Types
- Character Data Types
- Number Data Types
- Date & Time Data Types
- Chp 6: Joining Data from Multiple Tables
- Inner Joins
- Outer Joins
- Advanced Join Topics
- Chp 7: Subqueries
- Uncorrelated Subqueries
- Correlated Subqueries
- Table Subqueries
- Lateral Subqueries
- Common Table Expressions
- Chp 8: Window Functions
- Ranking Window Functions
- Aggregate Window Functions
- Lag & Lead
- Chp 9: Working with Sets
- Set Theory
- Union
- Intersect
- Except
- Chp 10: Creating Tables & Constraints
- Creating Tables
- Primary Keys
- Foreign Keys
- Check, Unique & Not Null Constraints
- Chp 11: Inserting, Updating & Deleting Data
- Importing & Exporting Data
- Using Transactions & Inserting Data
- Updating Data
- Deleting Data
- Chp 12: Views & Functions
- Views
- Materialized Views
- Writing Functions with SQL
- Writing Functions with PL/pgSQL
- Chp 13: Query Performance & Indexing
- Query Plans with Explain
- Indexes
- Reading Complex Query Plans
- Query Optimization