SQL Roadmap¶
- Roadmap: https://roadmap.sh/sql
1. Learn the Basics¶
- 1.1 What are Relational Databases?
- 1.2 RDBMS Benefits and Limitations
- 1.3 SQL vs NoSQL Databases
2. Basic SQL Syntax¶
- 2.1 SQL Keywords
- 2.2 Data Types
- 2.3 Operators
2.4 Statements¶
- 2.4.1 SELECT
- 2.4.2 INSERT
- 2.4.3 DELETE
- 2.4.4 UPDATE
3. Data Definition Language (DDL)¶
- 3.1 Create Table
- 3.2 Alter Table
- 3.3 Drop Table
- 3.4 Truncate Table
4. Data Manipulation Language (DML)¶
4.1 Select¶
- 4.1.1 FROM
- 4.1.2 WHERE
- 4.1.3 GROUP BY
- 4.1.4 ORDER BY
- 4.1.5 HAVING
- 4.1.6 JOINs
4.2 INSERT / UPDATE / DELETE¶
5. Aggregate Queries¶
- 5.1 SUM
- 5.2 COUNT
- 5.3 AVG
- 5.4 MIN
- 5.5 MAX
- 5.6 GROUP BY
- 5.7 HAVING
6. Data Constraints¶
- 6.1 Primary Key
- 6.2 Foreign Key
- 6.3 Unique
- 6.4 NOT NULL
- 6.5 CHECK
7. Subqueries¶
7.1 Different Types¶
- 7.1.1 Scalar
- 7.1.2 Column
- 7.1.3 Row
- 7.1.4 Table
7.2 Nested Subqueries¶
7.3 Correlated Subqueries¶
8. JOIN Queries¶
- 8.1 INNER JOIN
- 8.2 LEFT JOIN
- 8.3 RIGHT JOIN
- 8.4 FULL OUTER JOIN
- 8.5 Self Join
- 8.6 Cross Join
9. Advanced Functions¶
9.1 Numeric Functions¶
- 9.1.1 FLOOR
- 9.1.2 ABS
- 9.1.3 MOD
- 9.1.4 ROUND
- 9.1.5 CEILING
9.2 String Functions¶
- 9.2.1 CONCAT
- 9.2.2 LENGTH
- 9.2.3 SUBSTRING
- 9.2.4 REPLACE
- 9.2.5 UPPER
- 9.2.6 LOWER
9.3 Conditional¶
- 9.3.1 CASE
- 9.3.2 NULLIF
- 9.3.3 COALESCE
9.4 Date and Time¶
- 9.4.1 DATE
- 9.4.2 TIME
- 9.4.3 TIMESTAMP
- 9.4.4 DATEPART
- 9.4.5 DATEADD
10. Views¶
- 10.1 Creating Views
- 10.2 Modifying Views
- 10.3 Dropping Views
11. Indexes¶
- 11.1 Managing Indexes
- 11.2 Query Optimization
12. Transactions¶
- 12.1 BEGIN
- 12.2 COMMIT
- 12.3 ROLLBACK
- 12.4 SAVEPOINT
- 12.5 ACID
- 12.6 Transaction Isolation Levels
13. Data Integrity & Security¶
- 13.1 Data Integrity Constraints
- 13.2 GRANT and Revoke
- 13.3 DB Security Best Practices
14. Stored Procedures & Functions¶
15. Performance Optimization¶
15.1 Query Optimization Techniques¶
- 15.1.1 Using Indexes
- 15.1.2 Optimizing Joins
- 15.1.3 Reducing Subqueries
- 15.1.4 Selective Projection
15.2 Query Analysis Techniques¶
16. Advanced SQL¶
- 16.1 Window Functions
- 16.1.1 Row_number
- 16.1.2 rank
- 16.1.3 dense_rank
- 16.1.4 lead
- 16.1.5 lag
- 16.2 Recursive Queries
- 16.3 Pivot / Unpivot Operations
- 16.4 Common Table Expressions
- 16.5 Dynamic SQL