Structured Query Language (SQL) is the lingua franca of relational databases. Learn the essentials from SELECT queries to indexing, transactions, and performance.
Connect to a database and run your first SELECT.
Common scalar types (INT, TEXT, DATE, JSON) and nullability.
SELECT, FROM, WHERE; aliases, DISTINCT, and LIMIT/OFFSET.
WHERE with AND/OR/NOT; IN, BETWEEN, LIKE, and NULL handling.
ORDER BY, LIMIT/OFFSET, keyset pagination overview.
INNER, LEFT, RIGHT, FULL; ON vs USING and join pitfalls.
GROUP BY, HAVING, aggregate functions, and rollups.
Subselects, EXISTS, and WITH (CTE) for readable queries.
INSERT, UPDATE, DELETE; RETURNING (where supported).
CREATE TABLE, PRIMARY/FOREIGN keys, UNIQUE, CHECK, DEFAULT.
B-tree vs others, multi-column, partial, and covering indexes.
BEGIN/COMMIT/ROLLBACK; ACID and savepoints.
READ COMMITTED, REPEATABLE READ, SERIALIZABLE; anomalies.
Reusable query definitions and refreshable materialized views.
String, numeric, date/time, JSON functions, and CASE.
OVER(), PARTITION BY, ORDER BY; ranking and aggregates.
1NF/2NF/3NF and denormalization tradeoffs.
Reading EXPLAIN plans, avoiding anti-patterns, tuning tips.
Users/roles, GRANT/REVOKE, least privilege, SQL injection defense.
Schema changes, migration tools, and backward-compatible steps.
Query builders, N+1 pitfalls, batching, and transactions.