Master the fundamentals of SQL from scratch. Learn to query, manipulate, and design databases using PostgreSQL. Build real-world database systems through hands-on exercises and a capstone project. No prior database experience required.
SQL Basics is a free beginner course that takes you from zero database experience to confidently writing queries, manipulating data, and designing relational schemas using PostgreSQL. Starting with the fundamentals of how databases store data on disk and how SQL compares to NoSQL and vector alternatives, you progress through every layer of practical database work: filtering and sorting results, inserting and updating records, handling NULL values, and joining multiple tables. By the time you reach the aggregate functions and grouping module, you will be writing the kind of analytical queries that show up daily in business and research contexts.
The second half of the course builds on those foundations with advanced techniques including subqueries, common table expressions (CTEs), CASE statements, and string pattern matching with LIKE and ILIKE. Module 7 covers database design from scratch: creating tables, setting up primary and foreign keys, applying normalization rules (1NF through 3NF), and adding indexes to keep queries fast. Everything culminates in a capstone project where you design a business database schema, load sample data, and write reports from it.
This course suits students, analysts, researchers, and anyone who works with data and wants to query it directly rather than relying on pre-built tools. No prior programming or database background is needed. The course is completely free, and completing all modules plus the final exam earns you a certificate of completion you can add to your LinkedIn profile or resume.
8 modules • 44 lessons
The course covers eight modules: understanding databases and SQL, writing SELECT queries in PostgreSQL, inserting and manipulating data, joining multiple tables, aggregate functions and grouping, advanced techniques like CTEs and CASE statements, database design and normalization, and a capstone project building a real business database from scratch.
Yes, the entire course is free. No credit card or signup is required to start learning.
No prior experience is required. The course starts with the very basics of how databases work and builds up gradually, so complete beginners can follow along from the first lesson.
The course uses PostgreSQL throughout. The first lesson in Module 2 walks you through setting up your PostgreSQL environment, and all hands-on exercises run against it.
Yes. Completing all modules and passing the final exam earns you a certificate of completion that you can share on LinkedIn or include in a job application or academic portfolio.

Master essential Linux command line skills through hands-on practice. Learn to navigate the filesystem, manage files, search for content, control permissions, manage processes, and write shell scripts. Interactive terminal exercises in your browser make learning practical and engaging.

Practice SQL with hands-on exercises in your browser. Write real queries against a live database, get instant feedback, and build confidence through guided challenges. No setup required - start coding immediately.

Master npm and JavaScript package management from the ground up. Learn package.json configuration, dependency management, semantic versioning, npm scripts, and security best practices. Essential knowledge for any JavaScript developer.

A beginner-friendly journey through core JavaScript concepts. Learn fundamentals, variables, operators, control flow, functions, objects, arrays, DOM manipulation, events, async programming, ES modules, and modern ES6+ features.

Master Docker containerization from fundamentals to production deployment. Learn to build, run, and manage containers, create Dockerfiles, work with Docker Compose, and deploy multi-container applications. Essential DevOps skills for modern development workflows.

Dive deep into essential data structures and algorithms, implementing them in JavaScript. Learn arrays, strings, linked lists, stacks, queues, hash tables, trees, graphs, and key algorithmic techniques including recursion, sorting, searching, and dynamic programming.