beginnerFreeTutorials
SQL Complete Course: Introduction to Databases and SQL
Start SQL from zero with deep, conceptually strong lessons on database fundamentals, MySQL basics, ER design, keys, architecture, and real-world industry examples.
Duration
49h 6m
Lessons
121 lessons
Learners
1k+ enrolled

Outcomes
What you will build confidence with
Follow the course in order with structured lessons and examples.
Practice the key concepts needed to move from basics to real projects.
Use the lesson reader to continue where you left off.
Track completion as you work through the full syllabus.
Syllabus
Course content
121 lessons • 49h 6m total duration
Module 1
What is Data? Raw Facts, Types and the Data Lifecycle Explained
1
What is Data? Raw Facts, Types and the Data Lifecycle Explained
25m
2
What is a Database? Flat File vs Relational Database Explained
28m
3
Types of Databases: Relational, NoSQL, Hierarchical, Network and Cloud
30m
4
DBMS vs RDBMS: Features, Key Differences and Real Examples
30m
5
Introduction to MySQL: Server, Workbench, CLI, and First SQL Commands
35m
6
What is SQL? History, Purpose, Importance and How It Works
25m
7
SQL Sub-Languages: DDL, DML, DCL, TCL and DQL with Examples
35m
8
Keys in Database: Primary, Foreign, Candidate, Composite and Super Key
35m
9
Entity Relationship Model: Entities, Attributes, Relationships and ER Diagrams
35m
10
DBMS Architecture: 1-Tier, 2-Tier and 3-Tier Explained with Examples
30m
11
Real-World Database Use Cases: Netflix, Amazon, Zomato and Beyond
30m
12
SQL Data Types in MySQL: INT, VARCHAR, DATE, BOOLEAN, ENUM Explained
30m
13
CREATE DATABASE in MySQL: Syntax, Character Set, and Collation Explained
22m
14
CREATE TABLE in SQL: Column Definitions and Constraints Explained
28m
15
PRIMARY KEY and AUTO_INCREMENT in SQL: Single and Composite Keys Explained
25m
16
FOREIGN KEY in SQL: Referential Integrity, ON DELETE CASCADE, and ON UPDATE
28m
17
ALTER TABLE in SQL: ADD, DROP, MODIFY, and RENAME Column or Table
26m
18
DROP TABLE vs TRUNCATE TABLE vs DELETE: Differences and When to Use Each
24m
19
RENAME TABLE in MySQL: Syntax and Practical Examples
18m
20
SHOW TABLES and DESCRIBE in MySQL: Inspecting Database Structure
18m
21
SQL Constraints: All 6 Types Explained with MySQL Syntax Examples
26m
22
Practical Exercise: Design a 3-Table Student Management Database Schema
35m
23
INSERT INTO in SQL: Single Row, Multiple Rows, and INSERT SELECT
22m
24
SELECT Statement in SQL: Selecting All Columns vs Specific Columns
20m
25
SELECT DISTINCT in SQL: Removing Duplicate Records from Query Results
18m
26
WHERE Clause in SQL: Filtering with =, !=, >, <, >=, <=
22m
27
Logical Operators in SQL: AND, OR, NOT with Complex Conditions
22m
28
BETWEEN Operator in SQL: Range Queries on Numbers and Dates
16m
29
IN and NOT IN Operators in SQL: Matching Against a List of Values
18m
30
LIKE Operator and Wildcards in SQL: % and _ for Pattern Matching
20m
31
IS NULL and IS NOT NULL in SQL: Handling NULL Values in Queries
18m
32
ORDER BY in SQL: Ascending, Descending, and Multi-Column Sorting
18m
33
LIMIT and OFFSET in MySQL: Pagination Explained with Examples
18m
34
UPDATE Statement in SQL: Updating Single and Multiple Rows with WHERE
22m
35
DELETE Statement in SQL: Safe Deletion with Conditions
20m
36
REPLACE INTO in MySQL: The MySQL-Specific Upsert Syntax
18m
37
Practical Exercise: 25 SQL Query Challenges on an E-commerce Product Table
40m
38
SQL String Functions: CONCAT, SUBSTRING, TRIM, REPLACE, and More
28m
39
SQL Numeric Functions: ABS, ROUND, CEIL, FLOOR, POWER, and More
24m
40
SQL Date & Time Functions: NOW, DATEDIFF, DATE_FORMAT, and More
28m
41
SQL Aggregate Functions: COUNT, SUM, AVG, MIN, MAX With and Without GROUP BY
26m
42
NULL Handling Functions in SQL: IFNULL, NULLIF, and COALESCE
20m
43
Conditional Functions in SQL: IF() and CASE WHEN THEN ELSE END
24m
44
Type Conversion in SQL: CAST() and CONVERT() in MySQL
20m
45
JSON Functions in MySQL 8.0+: JSON_EXTRACT, JSON_SET, and JSON_ARRAYAGG
24m
46
Window Functions Preview: ROW_NUMBER and RANK in SQL
16m
47
Practical Exercise: Querying a Sales Database with 15+ Function Combinations
35m
Module 2
Joins
48
What is a SQL JOIN? Relational Table Joins Explained
25m
49
INNER JOIN in SQL with Matching Row Examples
25m
50
LEFT JOIN in SQL with Real-World Examples
25m
51
RIGHT JOIN in SQL with Practical Use Cases
20m
52
FULL OUTER JOIN in MySQL Using UNION
25m
53
CROSS JOIN in SQL and Cartesian Product Explained
20m
54
SELF JOIN in SQL for Employee Manager Hierarchies
25m
55
NATURAL JOIN in SQL and When to Avoid It
20m
56
Joining Three or More Tables in a Single SQL Query
25m
57
JOIN ON vs WHERE in SQL: Key Difference Explained
20m
58
SQL JOIN with Aggregate Functions for Reporting
25m
59
Non-Equi JOIN in SQL with Range-Based Conditions
25m
60
SQL JOIN Performance Tips for Faster Queries
30m
61
Hospital Management Database SQL JOIN Practice with 30 Challenges
1h 30m
62
SQL JOIN Types Visual Guide with Venn Diagrams
15m
Module 3
GROUP BY & Aggregation
63
GROUP BY Clause in MySQL Explained for Beginners
25m
64
COUNT with GROUP BY in SQL to Count Records by Category
25m
65
SUM, AVG, MIN and MAX with GROUP BY for Sales Analytics
25m
66
HAVING Clause in SQL for Filtering Aggregated Results
20m
67
WHERE vs HAVING in SQL: Difference with Examples
15m
68
GROUP BY Multiple Columns in SQL with Examples
20m
69
GROUP BY with JOINs in SQL for Related Table Reports
25m
70
ROLLUP in MySQL for Subtotals and Grand Totals
25m
71
WITH ROLLUP in MySQL for Report-Style SQL Output
20m
72
How MySQL Handles NULL Values in GROUP BY
20m
73
DISTINCT vs GROUP BY in SQL: When to Use Each
20m
74
Monthly Sales Report and Top Customers SQL Use Case
45m
75
HR Payroll Dataset SQL Aggregation Practice with 20 Challenges
1h 15m
Module 4
SQL Subqueries
76
What is a Subquery in SQL? Types and Use Cases
20m
77
Single-Row Subquery in SQL with Examples
18m
78
Multi-Row Subquery in SQL with Examples
18m
79
Multi-Column Subquery in SQL with Examples
18m
80
Subquery in WHERE Clause for Filtering Data
20m
81
Subquery in FROM Clause: Derived Tables and Inline Views
20m
82
Subquery in SELECT Clause: Scalar Subqueries Explained
20m
83
Correlated Subquery in SQL with Row-by-Row Examples
24m
84
Non-Correlated Subquery in SQL Explained
16m
85
EXISTS and NOT EXISTS in SQL for Efficient Checks
20m
86
IN vs EXISTS in SQL: Performance and Best Use Cases
20m
87
ANY and ALL Operators in SQL with Examples
18m
88
Subquery vs JOIN in SQL: Which One Should You Use?
22m
89
Nested Subqueries in SQL with 3+ Level Examples
22m
90
SQL Subquery Practice with 20 Correlated Query Challenges
40m
Module 5
Database Design and Normalization
91
What is Database Design? Logical vs Physical Design Explained
20m
92
ER Diagram Concepts: Entities, Attributes, Relationships and Cardinality
22m
93
Database Relationships: One-to-One, One-to-Many and Many-to-Many
22m
94
How to Convert ER Diagrams into Relational Tables
24m
95
What is Normalization in DBMS? Purpose, Benefits and Drawbacks
22m
96
Functional Dependency in DBMS with Examples
20m
97
First Normal Form 1NF Explained with Examples
20m
98
Second Normal Form 2NF Explained with Examples
22m
99
Third Normal Form 3NF Explained with Examples
22m
100
Boyce-Codd Normal Form BCNF Explained
22m
101
Fourth Normal Form 4NF and Multi-Valued Dependencies
22m
102
Denormalization in Databases: When and Why to Use It
20m
103
SQL Schema Design Best Practices and Naming Conventions
22m
104
Normalize an Excel Spreadsheet into a 3NF Database Case Study
30m
105
Library Management System Database Design and Normalization Project
40m
Module 6
SQL Views, Indexes and Query Performance Optimization
106
What is a SQL View? Benefits and Limitations Explained
18m
107
CREATE VIEW in SQL with Simple and JOIN-Based Examples
18m
108
Updatable Views in SQL: INSERT and UPDATE Through Views
20m
109
WITH CHECK OPTION in SQL Views Explained
18m
110
DROP VIEW and ALTER VIEW in SQL for View Management
14m
111
Materialized Views Concept and MySQL Workarounds
20m
112
What is an Index in SQL? B-Tree Indexes Explained
22m
113
SQL Index Types: Primary, Unique, Fulltext, Spatial and Composite
20m
114
CREATE INDEX in SQL with Single and Multi-Column Examples
18m
115
SHOW INDEX and DROP INDEX in MySQL
16m
116
When SQL Indexes Help and When They Hurt Performance
22m
117
Clustered vs Non-Clustered Index in MySQL Engines
22m
118
Covering Index in SQL for Faster Query Performance
20m
119
Indexing JOIN Columns to Improve SQL Query Speed
18m
120
EXPLAIN in MySQL for Reading Query Execution Plans
24m
121
SQL Query Optimization Practice with Indexes and EXPLAIN
40m
Community feedback
Course reviews
Loading reviews...