Welcome to the Advanced SQL Course! This course is designed to help you master advanced SQL concepts through practical exercises and real-world examples. The course is structured over 15 days, with daily lessons and assignments to reinforce the material.
Download MySQL for Win here
- Topics:
- Recap of basic SQL concepts
- Introduction to subqueries and nested queries.
- Assignment: Day 1 Assignment
- Solutions: Day 1 Solutions
- Topics: Detailed explanation and usage of complex joins.
- Assignment: Day 2 Assignment
- Solutions: Day 2 Solutions
- Topics: Using subqueries in SELECT, INSERT, UPDATE, DELETE.
- Assignment: Day 3 Assignment
- Solutions: Day 3 Solutions
- Topics: Introduction to window functions, ROW_NUMBER(), RANK(), DENSE_RANK(), and others.
- Assignment: Day 4 Assignment
- Solutions: Day 4 Solutions
- Topics: How to use CTEs for better readability and reusability of queries.
- Assignment: Day 5 Assignment
- Solutions: Day 5 Solutions
- Topics: Using HAVING and GROUP BY effectively, introduction to GROUPING SETS.
- Assignment: Day 6 Assignment
- Solutions: Day 6 Solutions
- Topics: How to optimize SQL queries, Indexes, Query Execution Plans.
- Assignment: Day 7 Assignment
- Solutions: Day 7 Solutions
- Topics: Understanding composite indexes, covering indexes, and indexing strategies.
- Assignment: Day 8 Assignment
- Solutions: Day 8 Solutions
- Topics: ACID properties, isolation levels, and handling transactions in SQL.
- Assignment: Day 9 Assignment
- Solutions: Day 9 Solutions
- Topics: Using MERGE for conditional inserts and updates, working with UPSERT in SQL.
- Assignment: Day 10 Assignment
- Solutions: Day 10 Solutions
- Topics: Using recursive CTEs to solve hierarchical problems.
- Assignment: Day 11 Assignment
- Solutions: Day 11 Solutions
- Topics: Pivoting rows to columns and vice versa, unpivoting data.
- Assignment: Day 12 Assignment
- Solutions: Day 12 Solutions
- Topics: Defining constraints for data integrity, unique constraints, and foreign keys.
- Assignment: Day 13 Assignment
- Solutions: Day 13 Solutions
- Topics: Working with large datasets, partitioning, sharding, and distributed SQL.
- Assignment: Day 14 Assignment
- Solutions: Day 14 Solutions
- Topics: Integrating SQL with real-world applications, working with SQL in cloud databases.
- Assignment: Day 15 Assignment
- Solutions: Day 15 Solutions
- Go through each day's lessons and complete the assignment provided.
- Check the solution link for hints or guidance if needed.
- Feel free to fork this repository and make your own changes or improvements to the exercises.
- Share your feedback or improvements as pull requests.
- Basic understanding of SQL.
- Familiarity with databases (e.g., MySQL, PostgreSQL, SQLite).
This course and its materials are created and shared by Ekaterina Podkorytova. Feel free