Introduction to Relational Databases with PostgreSQL
Learn relational database fundamentals with PostgreSQL — from creating tables to writing complex queries. Hands-on practice in a live database environment with zero setup required.
View badge details
About This Course
Master the fundamentals of relational databases using PostgreSQL the world's most advanced open-source database. Starting from zero, you'll learn to design tables, write SQL queries, build relationships between data, and optimize performance. Every concept is practiced hands-on in a browser-based VS Code environment with a live PostgreSQL database no installation required.
This beginner-friendly course is the ideal foundation for anyone planning to work with Entity Framework Core, build web APIs, or develop SaaS applications with C# and .NET.
Course Curriculum
26 Lessons
What is a Relational Database?
Learn what relational databases are, why they matter, and how PostgreSQL fits into the picture. Understand tables, rows, columns, and the SQL language.
What is a Relational Database? - Lab Exercises
Connect to PostgreSQL, explore the database with SQLTools, and run your first SQL queries.
Creating Tables and Data Types
Learn to create tables with appropriate data types and constraints. Understand how to modify and drop tables.
Creating Tables and Data Types - Lab Exercises
Design and create tables for a client management database with proper data types and constraints.
Inserting and Retrieving Data
Learn INSERT and basic SELECT statements. Understand how to add data to tables and retrieve it with simple queries.
Inserting and Retrieving Data - Lab Exercises
Populate tables with data and write SELECT queries to retrieve information from the database.
Filtering, Sorting, and Pagination
Master WHERE clause operators, pattern matching with LIKE, NULL handling, ORDER BY, LIMIT, OFFSET, and DISTINCT.
Filtering, Sorting, and Pagination - Lab Exercises
Write advanced queries using comparison operators, pattern matching, sorting, and pagination against the client database.
Modifying and Deleting Data
Learn UPDATE, DELETE, and TRUNCATE statements. Understand transactions and how to safely modify data.
Modifying and Deleting Data - Lab Exercises
Practice updating and deleting records safely using transactions and conditional logic.
Table Relationships and Foreign Keys
Understand primary keys, foreign keys, one-to-many and many-to-many relationships, and referential integrity.
Table Relationships and Foreign Keys - Lab Exercises
Build related tables with foreign keys and junction tables for the client management database.
Joining Tables
Master INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN, and self-joins to combine data from multiple tables.
Joining Tables - Lab Exercises
Write multi-table JOIN queries to generate reports combining client, project, and employee data.
Aggregation and Grouping
Learn COUNT, SUM, AVG, MIN, MAX aggregate functions with GROUP BY and HAVING clauses.
Aggregation and Grouping - Lab Exercises
Build summary reports and analytics queries using aggregate functions and grouping.
Subqueries and Common Table Expressions
Write subqueries, correlated subqueries, and CTEs (WITH clause) for complex data retrieval.
Subqueries and Common Table Expressions - Lab Exercises
Solve complex business questions using subqueries and CTEs against the client management database.
Indexes and Query Performance
Understand how indexes work, when to create them, and how to use EXPLAIN ANALYZE to optimize queries.
Indexes and Query Performance - Lab Exercises
Create indexes, analyze query plans with EXPLAIN, and measure performance improvements.
Views and Functions
Create reusable views and PostgreSQL functions to simplify complex queries and encapsulate business logic.
Views and Functions - Lab Exercises
Build views for reporting dashboards and functions for business logic in the client management database.
Database Design and Normalization
Learn database design principles, entity-relationship modeling, and normalization from 1NF through 3NF.
Database Design and Normalization - Lab Exercises
Analyze poorly designed tables, identify normalization violations, and restructure them into proper 3NF design.
Capstone Briefing - Build a Complete Database
Review all concepts and receive the requirements for designing and building a complete database from scratch.
Capstone: Build a Complete Database
Design and implement a complete PostgreSQL database for a real-world scenario, demonstrating mastery of all course concepts.