Skip to main content
Programming Languages

SQL.

Database querying from fundamentals to advanced — SELECT, JOINs, window functions, CTEs, and query optimisation.

Beginner

Start here — no prior experience needed

8 lessons

Intermediate

For developers with core concepts down

10 lessons
sql intermediate
5 min read

Summarize data with COUNT, SUM, AVG, GROUP BY, HAVING, and the FILTER clause.

sql intermediate
5 min read

Use subqueries in SELECT, WHERE, and FROM clauses — including correlated subqueries, EXISTS, and lateral joins.

sql intermediate
5 min read

Write cleaner queries with WITH clauses, chain multiple CTEs, and use recursive CTEs for hierarchical data.

sql intermediate
5 min read

Use ROW_NUMBER, RANK, LAG, LEAD, and other window functions to perform calculations across rows.

sql intermediate
5 min read

Speed up queries with B-tree, Hash, GIN, and GiST indexes, and use EXPLAIN ANALYZE to verify.

sql intermediate
5 min read

Ensure data integrity with ACID transactions, savepoints, and isolation levels in PostgreSQL.

sql intermediate
5 min read

Create views and materialized views to simplify queries, encapsulate logic, and improve security.

sql intermediate
5 min read

Store, query, and index JSON data using PostgreSQL's JSON and JSONB types.

sql intermediate
5 min read

Design normalized, maintainable schemas with proper relationships, constraints, and best practices.

sql intermediate
5 min read

The top 35 SQL interview questions with real query solutions and explanations.

Advanced

Production-grade patterns for experienced engineers

4 lessons