
Learn to write sql queries for data analysis using MySQL, supported by diagrams, a real database, and 50 coding challenges with solutions.
Explore popular relational database management systems, including my school, Post School, Oracle, SQL Server, and SQL Light, and compare open source status, dialects, and free development editions.
Explore sql, the relational model based language rooted in set theory. See how a relation maps to a table with unique attributes and primary keys that prevent duplicates.
Retrieve data with the select statement from a table, choosing single or multiple columns, or all columns with star, and apply aliasing and virtual columns such as bonus.
Install MySQL on Windows, install and open MySQL Workbench, then run the course databases SQL file to create databases and schemas, connect to the local instance, and run SQL queries.
Install macOS, set up MySQL server and MySQL Workbench, download the course databases SQL file, create SIS and HCM schemas, and explore the employees table.
Engage in challenge-driven sql practice in mysql, with solutions in workbench, optional hints via pdfs, and multiple approaches, focusing on sql fundamentals over optimization.
practice writing simple select statements on sample tables, including hcm.employees and old customers, learn aliasing the last name as customer last name and selecting all columns with an asterisk.
Solve select challenges in MySQL Workbench by retrieving first name and last name from HCM.employees, aliasing last name as customer_last_name with city from iStock.customers, and selecting all columns from oas.order_items.
Apply the select distinct clause to remove duplicates and return unique values when one column is used, or unique combinations when multiple columns are specified in MySQL.
Practice using the select distinct statement to extract unique localities from the Antarctic birds population table and to find distinct locality and species ID combinations, reinforcing data analysis with MySQL.
Explore select distinct queries by extracting unique localities and unique locality and species id combinations from the Antarctic populations table, showing how duplicates disappear when combining columns.
Learn to use the order by clause to sort results by multiple columns, default ascending, with desc for descending, and add a tie-breaker like employee id for deterministic ordering.
Apply the limit clause, usually with an order by, to return a set of rows such as the top two most recently placed orders, noting potential non-determinism without ordering.
Apply the order by clause to sort employees by last name, salary, hire date, and department. Use limit to retrieve the top earners in MySQL.
Learn to order query results in MySQL using order by with ascending and descending, including by last name, salary, and hire date, with a limit of top 10 results.
Explore the where clause and three-valued logic in SQL by filtering nulls, using is now and does not equal, and understanding why unknowns cannot equal each other.
Learn how to replace nulls in queries using coalesce function to produce correct totals by substituting missing salaries or bonuses. See how it returns the first non-null value across expressions.
Master the where clause with comparison operators—equals, not equals, less than, greater than, and the between operator—through practical MySQL price filtering.
Learn to use the where clause to filter data in MySQL, covering price filters, unshipped orders, and date-based queries with proper date literals and comparisons.
Explore solutions to where clause challenges by filtering products with price greater than 100, identifying unshipped orders, and querying orders on February 26, 2020.
Explore how collations govern string comparison and sorting in MySQL, including case and accent sensitivity, and master pattern matching with the like operator and wildcards.
Learn how to perform pattern matching in SQL with like, underscores and percent wildcards to filter product names, and use escape with the escape keyword to search for literal underscores.
Explore pattern matching in sql using like and percent wildcards to filter data. Practice selecting countries starting with a letter, gmail customers, and products containing the word mouth.
Use the like operator with percent wildcards to find country names starting with n, explore case-insensitive collations via information_schema, and search product names containing mouse and Gmail addresses.
Explore the most common MySQL data types—string, numeric, and date-time—focusing on varchar, char, integer, decimal with precision and scale, float, and date-time variants. Learn to choose column types for queries.
Explore aggregate functions that return a single value across rows, including min, max, sum, average, count, and count distinct, and note their use with group by alongside scalar functions.
Learn to write grouped queries using group by and aggregate functions to compute totals such as total area by property zone, and to count properties by the occupied column.
Learn how the having clause filters groups after group by using aggregate functions like count; see the property owners example that returns groups with more than one owner.
Discover the MySQL logical query processing order (conceptual order) and how from, where, select, group by, having, and order by shape query results.
Master sql aggregation with group by challenges: count employees by department, average salaries by department with order by, total on hand by warehouse, and population counts by locality and species.
Master group by queries in MySQL through practical challenges. Count employees by department, compute average salaries, sum inventories by warehouse, and find latest population counts by locality and locality-species.
Explore how the and operator filters data in SQL by requiring both conditions—room style single and window view ocean—to be true in the where clause, returning matching rows.
Learn how the or operator in sql filters hotel rooms by returning rows where the room style is single or ocean view.
Examine operator precedence in sql queries by combining the and and or operators, and learn how parentheses override evaluation to determine which rows are returned from a hotel rooms table.
Learn how the in operator filters rows by checking if a value appears in a specified list, using integer supplier_id or varchar part_name with proper quotes.
Master SQL logical operators through five challenges that use or, in, and operator precedence, including filtering employees by city and salary and filtering products by category exclusions.
Master SQL through practical challenges, using or, in, and not in with proper precedence and date filters in MySQL for data analysis.
Use an inner join to connect departments and employees by matching department_id, returning only rows with matches. Alias tables and select specific columns for concise queries.
Explore left outer join and right outer join in SQL, showing how left join includes all left-table rows and right join includes all right-table rows with nulls for unmatched data.
Learn how primary keys and foreign keys enforce data integrity. Apply not null and unique constraints, explore department and employee examples, and grasp one-to-many relations and referential integrity.
Explore three sql join challenges: use inner join to fetch employees with their department, an outer join to include unassigned employees, and a group by to count employees per department.
Learn to join employees and departments with inner, left, and right joins to show department names, include unassigned employees, and count by department.
If you want to learn how to write SQL queries quickly then you have come to the right place.
What makes this course unique are the following features:
1. I get straight to the point - no messing around or time wasted padding out lectures.
2. Purely focused on writing SQL queries for data analysis rather than on creating and managing database tables.
3. Lots of visual diagrams to help you understand key concepts.
3. Lots of challenges where you get to write SQL queries. In addition, the solution to every challenge is provided and I walk through the solutions as well.
4. At under 4 fours in length this is a course you will actually finish! And you will get 30 SQL coding challenges which are spread throughout the course. In addition, we will go through the solution to every challenge in a practical demo lecture.
This course focuses on the fundamentals of the SQL language and I go everything step-by-step with lots of visual examples along the way. Also included in this course, are the conceptual steps of how a query gets evaluated. This provides a visual of how things are working, so that when you are confronted with your own real-life SQL challenges, you will have the skills to arrive at the best solution.
IMPORTANT NOTE: This course does NOT cover building, altering, or maintaining SQL/MySQL databases or tables. Our goal in this course is purely on writing queries for database analysis using MySQL and MySQL Workbench.