
Explore how to pronounce SQL and MySQL, tracing why some say sequel or S-Q-L, the historic name change, and regional preferences from the USA to Europe.
Learn the difference between SQL and MySQL, and how SQL queries interact with relational databases; explore databases like MySQL, SQL Lite, PostgreSQL and understand RDBMS concepts.
Install MySQL server and MySQL Workbench on macOS to begin learning SQL, following step-by-step downloads, installations, and setup.
Learn to install and configure MySQL server and MySQL Workbench on Windows by downloading the installer, running setup, setting a password, and adjusting startup options.
Install and configure MySQL server and MySQL Workbench on Ubuntu using terminal commands, including updating packages, setting the root password, and running mysql_secure_installation.
Select 720p in settings to watch video lessons with English subtitles and access on-screen text. Navigate sections and lessons to reach Q and A and all course questions.
Discover how MySQL stores information in databases and tables, and learn to create a database with SQL using create database, show databases, and execute commands in MySQL Workbench.
Learn to create databases and tables in MySQL, define columns such as id, first_name, last_name, and email, and insert rows using insert into.
learn to insert multiple rows with a single insert into statement by listing columns and values for rows, compare with separate inserts, note pros, cons, comma or semicolon pitfalls.
Learn to insert records with insert into, specify columns, handle missing last_name resulting in null, use database, and quote text values to populate and verify table data.
Practice building a MySQL database called store, create a vegetables table with name (up to 50 chars), weight (integer), and price (double), then insert onion, potato, and tomato.
Add a new staff member with insert into staff and verify it with select all, then use select distinct to retrieve unique first names or unique name pairs (first_name, last_name).
Master filtering with SQL where clauses by using the equal, greater than, less than, greater than or equal to, less than or equal to, and not equal operators, with practical id and first_name examples.
Master between, in, not in, like, not like, is null, and is not null operators. Apply them to the staff table to filter by id, names, and emails.
Sort query results with order by, specifying columns such as last_name or id, with NULL values first and numbers sorted, and use DESC with multiple columns to resolve ties.
Add lettuce, carrot, and pumpkin to the vegetables table in MySQL store database, then query items by price 2–3, weight under 400, and names ending with o in descending order.
Load data.sql in mysql workbench and insert lettuce, carrot, pumpkin. Query by price between 2 and 3, weight under 400, and names ending with o, descending.
Update data in rows using the sql update pattern, set new values for staff columns, and apply a where clause with a unique id to target rows.
Delete records in MySQL using delete from with where, including removing an employee by id and filtering invalid emails with not like and wildcards.
Explore five aggregate functions—min, max, sum, avg, and count—and learn how to use alter table to add a salary column, populate data, and query salaries in staff.
Learn how to use the three core sql logical operators, AND, OR, and NOT, to filter results, build multi-condition queries, and combine conditions with parentheses.
Learn how the having clause filters grouped data by aggregate values, using avg salary by department to show only departments with avg salary above $50,000, and then order by department.
Learn how rollup works in MySQL to compute department totals and the overall company total using select department, sum(salary) from staff group by department with rollup.
Learn to apply limit to control the number of rows, filter by department, and order by salary descending to identify the top earner, with practical examples like limit 1.
Practice on the vegetables table in the store database to count weight >= 350, compute the average price, find max and min prices, and remove the heaviest vegetable.
Explore how to query the store.vegetables table to count items with weight >= 350, compute average price, identify max and min prices, and remove the heaviest vegetable.
Master ALTER TABLE to add, modify, change, and drop columns and adjust data types in MySQL, with practical staff table examples like the department column.
Learn to drop a table or database with the drop command, and recognize the irreversible data loss. Verify with show tables and show databases, and plan before deleting.
Add a price category column to the store database’s vegetables table, using varchar(50), assign expensive or cheap by price, tally cheap versus expensive, then delete the vegetables table.
Add a price category column in MySQL, assign expensive for price greater than 2 and cheap for price less than or equal to 2, count categories, then drop vegetables table.
Explore how primary keys uniquely identify records and how foreign keys link related tables, using products and reviews to illustrate one-to-many relationships in a MySQL database.
Explore the three sql relationship types—one-to-one, one-to-many, and many-to-many—showing how primary keys, foreign keys, and bridging tables connect products, details, reviews.
Explore how to join data from users and comments tables using the join clause, covering inner, left, right, cross, and full outer joins to produce a unified results table.
Explore how the inner join combines rows from tables by matching values in both tables, and write queries using select, from, inner join, and on to link users to comments.
Create a store database, build brands and shoes tables, then compute and display the average price by brand, ordering results alphabetically by brand.
Demonstrate building a store database with brands and shoes, and computing each brand's average shoe price using an inner join, group by brand, and order by name.
Discover how left join returns all rows from the left table and matching rows from the right table, filling with nulls when there is no match.
Learn to count models of shoes per brand by joining the shoes and brands tables, including brands with zero models, then view results ordered alphabetically using the provided SQL file.
Select brand names and count models per brand using a left join on brands with shoes, grouped by brand name. Adidas has two models, others one; Skechers zero.
Master the right join by taking all rows from the right table and matching them to the left, producing nulls for unmatched rows, as shown with users and comments.
Practice sql joins by creating a joined footwear table that shows model name, price, and country, handling null brand data, and sorting countries in descending order.
Explore a MySQL workbench solution that selects model name and price from shoes, joins brands to fetch country, uses a right join on brand_id, and orders by country descending.
Explore full outer join and how it combines left and right join results to reveal all rows from two tables, including unmatched ones with nulls.
Learn to generate all coffee and syrup combinations with cross join, producing a table of coffee name, size, and syrup name for cafe latte, cafe mocha, and frappuccino.
Learn how to use aliases to rename columns and tables with as, and see how aliases shorten cross join queries for clearer, more efficient SQL.
Learn to combine results vertically with union, ensuring equal column counts, data types, and order; compare union with union all and add a source type column for totals.
Discover how the not null constraint enforces required fields in a books table. The lecture shows adding not null to name, author, and id to prevent incomplete records.
Learn how to enforce unique ids in MySQL using the unique constraint and auto increment, view constraints with describe, and prevent duplicate entries in the books table.
Apply the default constraint in MySQL to set a column’s default value, such as hardcover for the books format, and verify with describe and inserting records.
Learn to enforce positive page counts with a MySQL check constraint on the books table, using alter table add constraint check (pages > 0) and handling violations.
Learn how primary key and foreign key constraints define unique identifiers and inter-table relationships, enforce referential integrity, and implement them with sql commands and examples.
Create a blog database with a posts table, auto-increment id, unique not null title, text, author default admin, created date, status enum (draft, published, private) default draft, and likes 0.
Create a block database and posts table with id. Set title varchar(255) not null unique, text not null, date not null, author default admin, status enum with draft as default.
Explore the first five MySQL string functions—lower, upper, length, and trim—plus the concatenation function (conquer) to build full names and validate password length.
Explore MySQL string functions such as replace, substring, position, and substring index using a customers table to replace USA with United States, extract house numbers, and obtain zip codes.
Create a blog database and quotes table, populate it from file, format full names in uppercase with underscores, count characters excluding spaces, and display the first four words with ellipses.
Create a block database and a quotes table, insert data, and format results: uppercase full names, underscores replacing spaces, non-space character counts, and first four words with three dots.
Learn to work with MySQL date and time functions, create and auto-update date fields using curdate, curtime, and now, implementing default and on update behaviors to track registrations and last updates.
Learn to use the ifnull function to replace null phone numbers with the word unspecified, using a sample staff table and practical queries in MySQL Workbench.
Learn to use the MySQL if function to evaluate days off and display yes or no, using a three-expression select with an alias for clear results.
Learn to use the case conditional in SQL to map ISO country codes to full country names, displaying USA, Canada, and India with an else fallback.
Learn to use the coalesce function in MySQL to display the first non-null contact detail—phone, then email, then address—falling back to 'unspecified' when needed.
Discover what a subquery is and how it sits inside an outer query, with a users and comments example. Learn when to use subqueries in select, from, or where clauses.
Learn to use subqueries in the from clause with inner joins to compute network average ratings, then alias the subquery as network_ratings and extract the max rating.
Learn to write correlated queries that compare each series' rating to its network's average, using an outer query, a wrapped subquery, and a having condition that matches network ids.
Explore a cinema database with three tables and use nested subqueries to find directors who directed at least one crime film, such as The Departed or Pulp Fiction.
Explore how MySQL views function as virtual tables to simplify complex queries, from creating a revenue view with joins and groupings to selecting from it.
Learn to create and use stored procedures in MySQL, including parameter handling, begin and end blocks, custom delimiters, and calling procedures to fetch orders by date.
Create a stored procedure named orders by Kat that accepts a category and returns matching orders ordered by price descending, using a double-dollar delimiter and a sample call with TV.
Explore how MySQL variables work, distinguishing system variables from session and global scope, and learn to view and set values with show variables and set commands.
Create a user-defined variable to hold the average price and select items where price is greater than that variable, as shown with the Sony TV set.
Explore parameters and local variables in MySQL, using declare and set in procedures to compute an average price and display it for each row.
Learn how to create user defined functions in MySQL, using parameters, returns, deterministic behavior, and delimiters to compute totals from price and quantity. Explore two examples, including a total price function and a total price by shop id, and learn how to drop functions when finished.
Create a MySQL user defined function to count orders. Use two parameters: a category name and a date, and count TV orders on 24th of October 2035.
Create a deterministic MySQL user-defined function count_by_category_and_date that returns the number of orders for a given category and date using a custom delimiter and a local count variable.
Learn how to create, manage, and delete MySQL triggers that run after insert, update, or delete events, updating related tables like shops totals using new and old values.
Understand how indexes speed up queries by creating a binary tree structure for a date column, enabling faster range lookups and linking to the main table.
Learn how to create, read, explain, and delete indexes in MySQL to optimize queries on large datasets, such as the Amazon reviews dataset, using MySQL Workbench.
Practice creating, listing, and deleting an index on the username column in the reviews table of the Amazon database. Verify the new index named ADX username and list all indexes.
Create an index on the reviews table’s username column, then query and confirm improved performance, list all indexes, and drop the index to complete the task.
Explore two main ways to import and export data, including CSV files, using MySQL workbench or MySQL shell, and apply Windows and Mac OS settings for the shell method.
Import CSV data into MySQL Workbench. Create a database and a staff table with first name, last name, department ID, and location, then import via the Table Data Import Wizard.
Export data from a MySQL table to a CSV file with MySQL Workbench's export wizard, choosing columns, destination, and double quotes for text values, then save to desktop.
Configure macOS to limit the MySQL server to a single folder via terminal, create the my dad CNF, set permissions 644, and restart the server via system preferences.
Configure Windows settings to restrict the MySQL server to a single folder named MySQL for data import and export. Open MySQL Workbench as administrator and apply the folder security.
Export and import csv data into MySQL by creating a super db and staff table, then load data infile with comma separators, quoted text, and ignore header row.
Export a MySQL table to csv by selecting all, setting comma-separated fields with optional double quotes, choosing the export path, and enabling column headers before exporting.
Automate routine tasks in MySQL using events, scheduling one-time and recurring executions for daily reports and backups. Learn to enable the event scheduler, create events, and distinguish events from triggers.
Learn how database normalization uses normal forms, from UNF to 4NF, to eliminate repeating groups, ensure atomic columns, and prevent partial and transitive dependencies, improving data integrity and reducing redundancy.
Normalize tables to first normal form by ensuring primary keys, no repeating groups, and atomic cells. Create one-to-many and many-to-many relations with bridging tables such as book genre.
Explore the second normal form by removing partial dependencies, splitting data into books and authors with author id, and modeling one-to-many relationships.
Discover how the third normal form enforces primary key, no repeating groups, atomic columns, and no partial or transitive dependencies to reduce redundancy and improve data integrity.
Welcome to The Complete MySQL Bootcamp: From SQL Beginner to Expert.
Learn SQL from scratch with us:
This course is 100% up-to-date
We answer absolutely every question our students ask and the responses we give are thoroughly detailed
Why to learn SQL?
Because according to the latest Stack Overflow Survey, SQL takes third place (54.7%) among the most popular programming, scripting and markup languages.
Knowing SQL is a MUST for:
Web Developers
Node.js Developers
Python Developers
Java Developers
Business Analysts
Marketing Analysts
Data Science Specialists
Everyone working with databases and data analysis
Strengthen your resume now by learning SQL and find a better job by mastering the most in-demand skill used by tech giants like Google, YouTube, Amazon, PayPal, Netflix and others.
Do I need prior programming experience?
No prior programming experience is necessary. We will take you step by step through everything there is to know about SQL.
What if I have questions during the course?
In this SQL course you will never be alone. Our support team will be with you every step of the way, ready to answer your questions.
How will my lessons look?
Straight to the point, no time wasted! Firstly, all theory will be explained on slides and after you get the concept, we show you how it works in practice.
Will I have lots of practice?
This course comes packed with lots of exercises to effectively practice and actually use SQL in order to help you advance quickly.
Will I learn MySQL or PostgreSQL?
SQL-language can be used with different databases such as MySQL, PostgreSQL, SQLite and many others.
According to the latest Stack Overflow Developer Survey, MySQL is the most commonly used database:
MySQL (55.6%)
PostgreSQL (36.1%)
Microsoft SQL Server (33.0%)
SQLite (31.2%)
MongoDB (26.4%)
Redis (18.3%)
MariaDB (16.8%)
Oracle (16.5%)
Firebase (14.4%)
Elasticsearch (13.8%)
DynamoDB (7.1%)
IBM DB2 (2.9%)
Couchbase (1.9%)
In this course you will be working with the MySQL database management system but the knowledge gained here can be applied to virtually every other database management system.
Will I get a certificate?
At the end of this SQL course, you will get a certificate which can be added to LinkedIn, adding a feather to your cap that employers will surely notice.
What’s more, you have a 30-day money-back guarantee. No questions asked.
So, what are you waiting for? Enroll today. We will help you gain the skills to be successful in the market for many years to come. Your future starts now!