Most Popular 5,432 students 4.9/5

SQL Masterclass

Master SQL from basics to advanced. Learn database design, write complex queries, optimize performance, and analyze data. Covers MySQL, PostgreSQL, and SQL Server with real-world projects.

10
Modules
60+
Hours
200+
Queries
10
Assignments
SQL Databases Queries Design Performance Advanced

Your Learning Journey

Track your progress in real-time

0
Completed
0
Total
0
Remaining
Overall Progress 0%
Started
25%
50%
100%
Start Learning

Course Outline

1Introduction to SQL & Databases

0/4
Introduction to Structured Query Language (SQL)
History and evolution of SQL standards
Relational databases and ACID properties
Database management systems (DBMS) overview
SQL vs NoSQL comparison
Tables, rows, and columns fundamentals
Data types and constraints
Primary keys and unique identifiers
Foreign keys and relationships
Database schemas and naming conventions
MySQL installation and setup
PostgreSQL installation and configuration
SQL Server basics
DBeaver GUI tool installation
Command-line SQL clients and tools

2SELECT and WHERE Clauses

0/4
SELECT * and retrieving all columns
Selecting specific columns
Column aliases and renaming
DISTINCT keyword for unique values
LIMIT clause for result restrictions
Comparison operators (=, !=, >, <, >=, <=)
Logical operators (AND, OR, NOT)
IN and NOT IN operators
BETWEEN operator for ranges
LIKE and pattern matching, NULL checks
ORDER BY ascending and descending
Multi-column sorting
LIMIT clause for pagination
OFFSET for skipping rows
TOP clause in SQL Server

3JOINs and Relationships

0/4
Introduction to INNER JOIN syntax and basic usage
Combining matching records from two tables
ON clause and join conditions explained
Joining multiple tables with multiple conditions
Table aliases and naming conventions for clarity
LEFT JOIN: Keeping all rows from left table
RIGHT JOIN: Keeping all rows from right table
FULL OUTER JOIN: Combining all rows from both tables
Handling NULL values in joined results
CROSS JOIN: Creating Cartesian products
Self joins: Joining a table to itself
Complex join conditions with multiple criteria
Multi-column joins for composite keys
Join performance optimization techniques
Comparing UNION vs JOIN for combining data

4Aggregation and Grouping

0/4
COUNT function: Counting rows and non-null values
SUM, AVG, MAX, MIN: Basic statistical calculations
STRING_AGG: Combining multiple strings into one
JSON_AGG: Building JSON from row data
DISTINCT with aggregates for unique value calculations
GROUP BY: Organizing data into logical groups
Grouping by single and multiple columns
HAVING clause: Filtering groups after aggregation
Difference between WHERE and HAVING clauses
Common patterns: Top N per group, running totals
ROW_NUMBER: Assigning unique numbers to rows
RANK and DENSE_RANK: Handling ties in rankings
LAG and LEAD: Accessing previous and next row values
PARTITION BY: Creating separate windows within groups
Window frame specification: ROWS and RANGE clauses

5Subqueries and CTEs

0/4
Introduction to scalar subqueries in SELECT clause
Inline views: Using subqueries in FROM clause
EXISTS operator: Testing for row existence
IN operator: Matching against subquery results
Performance considerations: Correlated vs non-correlated
WITH clause: Creating named query subsets
Recursive CTEs: Handling hierarchical data
Chaining multiple CTEs together
CTE scope and lifecycle within queries
Readability improvements with named CTEs
Nested CTEs: Composing multiple levels of queries
Correlated subqueries: Row-by-row processing
Materialization: Optimizing subquery execution
Performance optimization techniques for complex queries
Common pitfalls: NULL handling and logical errors

6Indexes and Query Optimization

0/4
Primary key indexes: Enforcing uniqueness
Unique indexes: Preventing duplicate values
Composite indexes: Indexing multiple columns
B-tree structure: How indexes organize data
CREATE INDEX syntax and naming conventions
EXPLAIN PLAN: Understanding query execution
Index usage: How database chooses indexes
Cost analysis: Reading execution plan metrics
Seek vs Scan: Index utilization strategies
Estimated vs actual rows: Performance prediction
Query rewriting: Optimizing query logic
Statistics: Updating table and index statistics
Partitioning: Splitting large tables
Monitoring: Identifying slow queries
Caching and materialized views: Avoiding redundant work

7Transactions and Constraints

0/4
PRIMARY KEY: Unique row identification
FOREIGN KEY: Referential integrity between tables
UNIQUE constraint: Preventing duplicate values
CHECK and NOT NULL: Domain and mandatory value constraints
DEFAULT values: Setting automatic default data
BEGIN: Starting a transaction
COMMIT: Saving all changes permanently
ROLLBACK: Undoing changes within a transaction
Savepoints: Creating rollback points within transactions
Isolation levels: READ UNCOMMITTED to SERIALIZABLE
Row locks: Preventing concurrent modifications
Table locks: Exclusive and shared lock modes
Deadlock detection: Identifying circular wait conditions
Optimistic locking: Using version columns
Lock escalation: Managing resource usage efficiently

8Stored Procedures and Functions

0/4
CREATE PROCEDURE: Defining reusable code blocks
Input parameters: Passing data to procedures
Output parameters: Returning values from procedures
Control flow: IF, WHILE, CASE statements
Error handling: TRY-CATCH blocks in procedures
Scalar functions: Functions returning single values
Table-valued functions: Returning result sets
Deterministic functions: Consistent results for inputs
Recursive functions: Hierarchical data processing
Performance: Inline functions vs multi-statement functions
BEFORE triggers: Actions before INSERT, UPDATE, DELETE
AFTER triggers: Actions after data modifications
INSERT, UPDATE, DELETE triggers: Event-specific logic
Audit trails: Tracking data changes automatically
Cascading triggers: Handling dependent operations

9Database Design and Normalization

0/4
First Normal Form (1NF): Eliminating repeating groups
Second Normal Form (2NF): Partial dependency removal
Third Normal Form (3NF): Transitive dependency elimination
Boyce-Codd Normal Form (BCNF): Stronger form of 3NF
Denormalization tradeoffs: Performance vs consistency
Entity-relationship modeling: Identifying entities
Attributes and primary keys: Data representation
Cardinality: One-to-one, one-to-many, many-to-many
Relationships: Dependencies between entities
Design patterns: Common schema structures
Horizontal sharding: Distributing data across servers
Replication: Master-slave and master-master setups
Data warehousing: OLAP vs OLTP databases
Time-series data: Handling temporal databases
Archive strategies: Managing data retention policies

10Real-World Projects & Advanced Topics

0/6
Users table: Customer profiles and authentication
Products catalog: Item details, categories, pricing
Orders and order items: Tracking customer purchases
Payments: Transaction management and status tracking
Inventory management: Stock levels and availability
Patients: Demographics, medical history, contact info
Doctors: Specializations, schedules, credentials
Appointments: Scheduling and availability management
Medical records: Diagnoses, treatments, prescriptions
Billing: Charges, payments, insurance claims
User analytics: Traffic, behavior, demographics
Event tracking: User interactions and conversions
Reporting: Custom dashboards and KPI tracking
Aggregations: Pre-computed summaries for performance
Time-series data: Historical trends and forecasting
Users: Profiles, bios, follower relationships
Posts: Content, media, timestamps, visibility
Comments: Threaded discussions, nesting levels
Likes and reactions: Engagement tracking
Feed algorithms: Ranking and personalization data
JSON handling: Storing and querying semi-structured data
Full-text search: Indexed text searching capabilities
Temporal data: Versioning and time-travel queries
Geospatial queries: Location-based searches
Graph databases: Hierarchical and network data patterns