Month 3: Advanced SQL Techniques
Week 1 – Advanced Queries and Optimization
- Day 1: Advanced subqueries: Correlated subqueries and using subqueries in the SELECT, FROM, and WHERE clauses
- Day 2: Using CASE and IF functions in SQL
- Day 3: SQL query optimization basics: Understanding EXPLAIN and the Query Optimizer
- Day 4: Indexing for performance: B-Tree index, Hash index, Bitmap index, Clustered vs Non-Clustered
- Day 5: Data types in depth: Understanding the storage and performance implications
Week 2 – Advanced SQL Functions and Procedures
- Day 1: Advanced aggregate functions and statistics with SQL
- Day 2: Understanding stored procedures and functions in depth
- Day 3: Creating and executing stored procedures
- Day 4: User-Defined Functions: Scalar functions, Inline Table-Valued functions, Multi-statement Table-Valued functions
- Day 5: Triggers: Instead Of and After Triggers
Week 3 – Database Administration and Security
- Day 1: Understanding Users and Roles in SQL
- Day 2: Granting and Revoking permissions
- Day 3: SQL for database administration: Backup, Restore
- Day 4: Understanding and handling SQL Injections
- Day 5: Introduction to Encryption and Hashing in SQL
Week 4 – Working with Different SQL Dialects and Next Steps
- Day 1: Understanding SQL Dialects: MySQL, PostgreSQL, SQLite, and SQL Server
- Day 2: Advanced features in PostgreSQL: Arrays, HStore, JSON
- Day 3: Advanced features in SQL Server: Pivoting, Partitioning, Full-text Search
- Day 4: Advanced features in MySQL: Spatial Data, JSON, Full-Text indexes
- Day 5: Choosing the right SQL Dialect for your project, conclusion, and next steps