
Ziad Saab
Software Developer and Co-Founder DecodeMTL
Get a beginner-friendly introduction to SQL that covers querying, joins, aggregations, and data cleaning, with clear guidance on choosing the right commands and using query results to answer business questions.

Subscription · Monthly
7 skills
0 prerequisites
You will need to be able to communicate fluently and professionally in written and spoken English.
An Introduction to the course and using the Parch & Posey sales database to solve real-world business questions.
Explore SQL basics, its importance for data analysis, business use cases, database structure, and an overview of popular SQL databases with hands-on practice.
Learn how to interpret Entity Relationship Diagrams (ERDs) to visualize tables, columns, and relationships in a relational database.
Learn SQL basics by understanding key statements like SELECT and FROM, practicing queries, and following best practices for formatting and execution in a SQL workspace environment.
Learn how to use the LIMIT clause in SQL to restrict the number of rows returned in query results, making data exploration faster and more manageable.
Learn to use the SQL ORDER BY clause to sort query results by one or multiple columns, in ascending or descending order, with practical query exercises and solutions.
Learn to use the SQL WHERE clause to filter table data based on numeric or text conditions, using operators like =, !=, >, <, and practice with real-world queries.
Learn how to use arithmetic operators in SQL to create derived columns, perform calculations in queries, and apply order of operations for accurate results.
Learn how to use SQL's LIKE and IN operators to filter text and numeric data efficiently, enabling flexible database queries with wildcards and value lists.
Learn to use AND and BETWEEN operators in SQL to filter data with multiple conditions and ranges, practicing queries on real tables and understanding inclusivity of endpoints.
Learn how to use SQL's NOT and OR operators to filter data, combine conditions, and query for records that do not or do match given criteria, with practical examples and exercises.
Review key SQL commands, syntax, and concepts such as SELECT, FROM, WHERE, ORDER BY, LIKE, and data structure. Reinforce skills to write and understand basic SQL queries.
Gain an understanding of the definition of JOINS and database normalization and learn why they are needed.
Learn how to use INNER JOINs in SQL to combine data from multiple tables, write JOIN queries, and specify columns from different tables using the ON clause.
Learn how to use INNER, LEFT, and RIGHT JOINs in SQL to combine data from multiple tables, including filtering joins and understanding NULLs in join results.
Explore advanced SQL JOINs, primary and foreign keys, multi-table joins, and aliases to efficiently combine and analyze relational database tables.
Recap key concepts learned in this lesson.
An overview of the content that will be learned in Lesson 3.
Learn how NULLs represent missing data in SQL, how they differ from zeros, and how to identify or exclude them using IS NULL or IS NOT NULL in queries and aggregations.
Learn how to use SQL's COUNT function to count rows, understand the difference between COUNT(*) and COUNT(column), and see how NULL values affect results.
Learn how to use the SQL SUM function to total numeric columns, handle NULL values, and perform aggregations across data for inventory analysis and sales calculations.
Learn to use SQL's MIN, MAX, and AVG aggregate functions to find minimums, maximums, and averages, while understanding their handling of NULLs and practical business applications.
Learn how to use GROUP BY in SQL to aggregate data within subsets, group by multiple columns, and combine GROUP BY with ORDER BY for insightful data analysis.
Learn how to use DISTINCT in SQL SELECT statements to retrieve unique rows across specified columns, with practical examples and exercises for real-world query scenarios.
Learn how to use the SQL HAVING clause to filter aggregated group results, enabling analysis of grouped data with aggregate functions beyond the WHERE clause.
Explore how to use SQL date functions like DATE_TRUNC and DATE_PART to analyze, aggregate, and group data by various date parts for effective reporting.
Learn to use SQL CASE statements for conditional logic in SELECT queries, including multi-case logic, handling NULLs, and combining CASE with aggregations.
Learn the basics of SQL subqueries, focusing on scalar subqueries, to simplify complex logic and compare values efficiently within a single query.
Learn how to use subqueries in the WHERE clause to filter SQL results dynamically, making queries more flexible and readable. Practice building both scalar and filtering subqueries.
Learn how to use subqueries in the FROM clause to create derived tables, transform data, and build complex SQL queries efficiently with practical examples.
Learn how Common Table Expressions (CTEs) make complex SQL queries cleaner, more readable, and efficient by organizing logic into reusable, easily-managed parts with the WITH clause.
Discover how temporary tables in SQL simplify complex queries by storing intermediate results, boosting performance, organizing logic, and supporting efficient data analysis.
Learn key tips for writing clean, efficient SQL using subqueries, CTEs, and temp tables, plus best practices for clarity, performance, and maintainability.
Discover SQL window functions to perform calculations like totals, averages, and ranking across rows while retaining individual data for advanced analysis.
Discover how SQL's PARTITION BY enables advanced analytics—like running totals, rankings, and trend analysis—across groups without losing row-level detail.
Understand the role of ORDER BY in SQL window functions for ordering, ranking, and framing data, including ROWS vs RANGE and practical uses like running totals and moving averages.
Learn how to build SQL window functions for detailed analysis, cumulative totals, and efficient queries using PARTITION BY, ORDER BY, and smart optimization strategies.
Learn why data cleaning is crucial, how to identify issues like duplicates, nulls, and outliers, and practical SQL techniques to ensure analysis is accurate and reliable.
Learn advanced SQL data cleaning using staging tables and workflows for scalable, reliable data prep, with best practices for consistency, deduplication, and quality control.
Learn how FULL OUTER JOIN in SQL returns all matched and unmatched rows from both tables, useful for comprehensive data comparison and analysis, with syntax, use cases, and practice.
Explore SQL JOINs using comparison operators like < and > to connect tables on inequalities, including practical queries and key differences from standard equality joins.
Learn how to use self JOINs in SQL to compare rows within the same table, often with inequalities, for analyzing event sequences within specific time intervals.
Learn to use the SQL UNION operator to combine result sets from multiple tables, remove duplicates, and perform further analysis on appended data, including using UNION ALL for all rows.
Learn to identify slow SQL queries and improve performance by filtering data, simplifying joins, aggregating before joins, and using EXPLAIN to analyze and optimize query plans.
In this project, students will be putting their SQL skills to the test to help determine where to concentrate efforts to combat deforestation.
4 instructors
Unlike typical professors, our instructors come from Fortune 500 and Global 2000 companies and have demonstrated leadership and expertise in their professions:

Ziad Saab
Software Developer and Co-Founder DecodeMTL

David Elliott
Data Scientist, Data Engineer

Derek Steer
CEO, Superframe

Malavica Sridhar
Senior Product Manager at CircleUp

Ziad Saab
Software Developer and Co-Founder DecodeMTL

David Elliott
Data Scientist, Data Engineer

Derek Steer
CEO, Superframe

Malavica Sridhar
Senior Product Manager at CircleUp

Subscription · Monthly