Syllabus & Study Plan
What the SQL course covers, what you'll be able to do by the end, and a suggested eight-week schedule with a checkpoint each week. Every lesson has live editors connected to the same demo database, so plan time to experiment.
Who this course is for
Beginners with no database experience, developers who use an ORM and want to understand the SQL underneath, and analysts, product managers and marketers who want to answer their own data questions.
Learning outcomes
By the end of the course you will be able to:
- Write queries that select, filter, sort and limit data, handling
NULLcorrectly. - Transform values with text, number, date and conversion functions and
CASE. - Summarise data with aggregates,
GROUP BY,HAVINGand pivot-style reports. - Combine tables with every kind of join and set operation, and avoid duplicate-row mistakes.
- Solve multi-step problems with subqueries, CTEs, recursive queries and window functions.
- Change data safely with
INSERT,UPDATE,DELETE, upserts and transactions. - Design normalised tables with appropriate types, constraints, keys, indexes and views.
- Read query plans, write index-friendly queries and prevent SQL injection.
- Move between SQLite, PostgreSQL, MySQL, SQL Server and Oracle with awareness of their differences.
Course outline
| Part | Lessons | Focus |
|---|---|---|
| 1. Getting Started | 01–08 | SELECT, WHERE, logic, ORDER BY, LIMIT, DISTINCT |
| 2. Filtering & Expressions | 09–13 | IN, BETWEEN, LIKE, NULL, CASE, operators |
| 3. Functions | 14–17 | Text, numbers, dates, CAST |
| 4. Grouping & Aggregation | 18–21 | Aggregates, GROUP BY, HAVING, conditional aggregation |
| 5. Joins & Set Operations | 22–28 | Keys, all join types, UNION/INTERSECT/EXCEPT |
| 6. Subqueries, CTEs & Windows | 29–34 | Subqueries, EXISTS, WITH, recursion, window functions |
| 7. Changing Data | 35–39 | INSERT, UPDATE, DELETE, upsert, transactions |
| 8. Database Design | 40–47 | Tables, types, constraints, keys, normalisation, indexes, views |
| 9. Advanced & Practical | 48–53 | Triggers, JSON, security, performance, dialects, project |
Eight-week study plan
Plan on three to four hours a week.
Week 1 — First queries
Checkpoint: without looking back, list the five cheapest products in stock, and the countries customers come from.
Week 2 — Filters and functions
Checkpoint: produce a customer list with a cleaned-up display name, the email domain, a "missing data" label and days since sign-up.
Week 3 — Aggregation
Checkpoint: a monthly report with one column per order status, and the categories whose average price exceeds 30.
Week 4 — Joins
Checkpoint: every customer with their order count and total spend (including customers with no orders), and an org chart of employees with their managers.
Week 5 — Subqueries, CTEs and windows
Checkpoint: the top two products per category, a running revenue total by month, and the full management chain above any employee.
Week 6 — Changing data
Checkpoint: in one transaction, place a new order with two items and reduce stock; then repeat with an error and roll back.
Week 7 — Database design
Checkpoint: design and create normalised tables for a small library (books, authors, members, loans) with keys, constraints, an index and a reporting view.
Week 8 — Advanced topics and the project
Final project: complete all nine analysis tasks before opening the solutions, then take the quiz and aim for 25 out of 30 or better.
Faster tracks
- Data analysis focus (about four weeks): Parts 1–6 plus lessons 47 and 53.
- Developer focus: add Parts 7–8 and lessons 50–52 — transactions, design, security and performance matter most when building applications.
- Already write SQL? Take the quiz first, then concentrate on lessons 11, 24, 27, 30, 33–34, 39, 46 and 50.
Practice resources
- Playground — a free editor connected to the demo database.
- Exercises — 34 fill-in-the-blank tasks and six query challenges.
- Quiz — 30 questions with explanations.