SQL 360° Syllabus
Module 1: Introduction to SQL & Databases
- What is SQL?
- RDBMS vs NoSQL: Concepts and Use Cases
- Common SQL Engines (MySQL, PostgreSQL, SQL Server, SQLite, Oracle)
- Understanding Tables, Rows, and Columns
- Data Types in SQL
Module 2: Basic SQL Queries
- SELECT, FROM, WHERE
- Filtering using logical operators (AND, OR, NOT)
- Sorting results with ORDER BY
- Removing duplicates with DISTINCT
- Limiting results with LIMIT or TOP
Module 3: Built-in SQL Functions
- Aggregate Functions: COUNT(), SUM(), AVG(), MIN(), MAX()
- String Functions: CONCAT(), SUBSTRING(), LENGTH(), LOWER(), UPPER()
- Date & Time Functions: NOW(), DATE(), DATEDIFF(), EXTRACT()
- Mathematical Functions
Module 4: SQL Joins
- INNER JOIN
- LEFT JOIN / RIGHT JOIN
- FULL OUTER JOIN
- SELF JOIN
- CROSS JOIN
- Using ON and USING clauses
Module 5: Grouping and Filtering
- GROUP BY and HAVING clauses
- Grouped Aggregates
- Difference between WHERE and HAVING
Module 6: Data Manipulation Language (DML)
- INSERT INTO
- UPDATE
- DELETE
- MERGE (in some SQL dialects)
Module 7: Data Definition Language (DDL)
- CREATE TABLE, ALTER TABLE, DROP TABLE
- Constraints: PRIMARY KEY, FOREIGN KEY, UNIQUE, CHECK, NOT NULL
- AUTO_INCREMENT / SERIAL
Module 8: Subqueries and Nested Queries
- Scalar, Correlated, and Multi-row subqueries
- EXISTS, IN, ANY, ALL
Module 9: Views and Indexes
- Creating and using VIEWS
- Pros and cons of views
- Indexing for performance
- Types of indexes (B-tree, Hash)
Module 10: Advanced SQL
- Transactions (BEGIN, COMMIT, ROLLBACK)
- TRUNCATE vs DELETE
- Stored Procedures and Functions
- Triggers
- Cursors
- Common Table Expressions (CTEs)
- Window Functions (ROW_NUMBER(), RANK(), PARTITION BY)
Module 11: Performance Optimization
- Query optimization techniques
- Execution plans
- Normalization and Denormalization
- Index tuning
Module 12: SQL in Real Projects
- Connecting SQL with programming languages (Python, Java, PHP)
- Using SQL in Data Analytics
- Using SQL with BI Tools (Power BI, Tableau)