Alphabetical Employee Directory
Show employee last names, first names, and emails alphabetically by last name. Return columns: email, last_name, first_name. Order results by: last_name, first_name.
Work through 98 beginner SQL exercises in a structured sequence. Each challenge includes a clear problem, schema context and an interactive query editor.
Show employee last names, first names, and emails alphabetically by last name. Return columns: email, last_name, first_name. Order results by: last_name, first_name.
Calculate the average salary for each department. Return columns: avg_salary, department_id. Order results by: department_id.
Count how many orders have the status 'completed'. Return columns: completed_count.
Count the number of employees in each department. Return columns: department_id, employee_count. Order results by: department_id.
List customers who joined on or after January 1, 2021. Return columns: name, country, joined_date. Order results by: joined_date.
Count customers in each country, sorted by the country name. Return columns: country, customer_count. Order results by: country.
List employee names and salaries between 70,000 and 90,000, ordered by salary. Return columns: salary, last_name, first_name. Order results by: salary.
Find all employees in department_id = 1 (Engineering), showing their name and salary. Return columns: salary, last_name, first_name.
Find employees with a salary greater than 80,000 and show id, first_name, last_name, and salary. Return columns: id, salary, last_name, first_name.
Find all employees who do not have a manager (manager_id is NULL). Return columns: id, last_name, first_name.
List the top 3 most expensive products with their names and prices. Return columns: name, price. Order results by: price DESC.
List pending orders with their date and total amount. Return columns: id, order_date, total_amount. Order results by: order_date.
Find products with fewer than 200 units in stock, cheapest first. Return columns: name, price, stock, category. Order results by: price.
Write a query to select all columns from the employees table. Return columns: id, email, salary, hire_date, last_name, first_name, manager_id, department_id.
Write a query to retrieve only the first_name and last_name of all employees. Return columns: last_name, first_name.
List all employees ordered by salary from highest to lowest. Return columns: salary, last_name, first_name. Order results by: salary DESC.
Calculate the combined budget of all departments. Return columns: total_budget.
Show every product name in uppercase alongside its category. Return columns: category, product_name. Order results by: id.
List employee names and salaries above 60000, ordered by salary descending. Return columns: salary, last_name, first_name. Order results by: salary DESC, id.
List employee names and salaries above 65000, ordered by salary descending. Return columns: salary, last_name, first_name. Order results by: salary DESC, id.
List employee names and salaries above 70000, ordered by salary descending. Return columns: salary, last_name, first_name. Order results by: salary DESC, id.
List employee names and salaries above 75000, ordered by salary descending. Return columns: salary, last_name, first_name. Order results by: salary DESC, id.
List employee names and salaries above 80000, ordered by salary descending. Return columns: salary, last_name, first_name. Order results by: salary DESC, id.
List employee names and salaries above 85000, ordered by salary descending. Return columns: salary, last_name, first_name. Order results by: salary DESC, id.
List employee names and salaries above 90000, ordered by salary descending. Return columns: salary, last_name, first_name. Order results by: salary DESC, id.
List employee names and salaries above 100000, ordered by salary descending. Return columns: salary, last_name, first_name. Order results by: salary DESC, id.
Return employee names and salaries below 60000, lowest salary first. Return columns: salary, last_name, first_name. Order results by: salary, id.
Return employee names and salaries below 65000, lowest salary first. Return columns: salary, last_name, first_name. Order results by: salary, id.
Return employee names and salaries below 70000, lowest salary first. Return columns: salary, last_name, first_name. Order results by: salary, id.
Return employee names and salaries below 75000, lowest salary first. Return columns: salary, last_name, first_name. Order results by: salary, id.
Return employee names and salaries below 80000, lowest salary first. Return columns: salary, last_name, first_name. Order results by: salary, id.
Return employee names and salaries below 85000, lowest salary first. Return columns: salary, last_name, first_name. Order results by: salary, id.
Return employee names and salaries below 90000, lowest salary first. Return columns: salary, last_name, first_name. Order results by: salary, id.
Return employee names and salaries below 100000, lowest salary first. Return columns: salary, last_name, first_name. Order results by: salary, id.
Find employees whose salary is between 55000 and 65000, inclusive. Return columns: salary, last_name, first_name. Order results by: salary, id.
Find employees whose salary is between 60000 and 70000, inclusive. Return columns: salary, last_name, first_name. Order results by: salary, id.
Find employees whose salary is between 65000 and 75000, inclusive. Return columns: salary, last_name, first_name. Order results by: salary, id.
Find employees whose salary is between 70000 and 85000, inclusive. Return columns: salary, last_name, first_name. Order results by: salary, id.
Find employees whose salary is between 75000 and 90000, inclusive. Return columns: salary, last_name, first_name. Order results by: salary, id.
Find employees whose salary is between 80000 and 95000, inclusive. Return columns: salary, last_name, first_name. Order results by: salary, id.
Find employees whose salary is between 85000 and 105000, inclusive. Return columns: salary, last_name, first_name. Order results by: salary, id.
Find employees whose salary is between 90000 and 110000, inclusive. Return columns: salary, last_name, first_name. Order results by: salary, id.
List employees hired on or after 2018-01-01, earliest first. Return columns: hire_date, last_name, first_name. Order results by: hire_date, id.
List employees hired on or after 2019-01-01, earliest first. Return columns: hire_date, last_name, first_name. Order results by: hire_date, id.
List employees hired on or after 2020-01-01, earliest first. Return columns: hire_date, last_name, first_name. Order results by: hire_date, id.
List employees hired on or after 2020-07-01, earliest first. Return columns: hire_date, last_name, first_name. Order results by: hire_date, id.
List employees hired on or after 2021-01-01, earliest first. Return columns: hire_date, last_name, first_name. Order results by: hire_date, id.
List employees hired on or after 2021-07-01, earliest first. Return columns: hire_date, last_name, first_name. Order results by: hire_date, id.
List employees hired on or after 2022-01-01, earliest first. Return columns: hire_date, last_name, first_name. Order results by: hire_date, id.
List employees hired on or after 2022-02-01, earliest first. Return columns: hire_date, last_name, first_name. Order results by: hire_date, id.
List employees hired before 2018-01-01, newest qualifying hire first. Return columns: hire_date, last_name, first_name. Order results by: hire_date DESC, id.
List employees hired before 2019-01-01, newest qualifying hire first. Return columns: hire_date, last_name, first_name. Order results by: hire_date DESC, id.
List employees hired before 2020-01-01, newest qualifying hire first. Return columns: hire_date, last_name, first_name. Order results by: hire_date DESC, id.
List employees hired before 2020-07-01, newest qualifying hire first. Return columns: hire_date, last_name, first_name. Order results by: hire_date DESC, id.
List employees hired before 2021-01-01, newest qualifying hire first. Return columns: hire_date, last_name, first_name. Order results by: hire_date DESC, id.
List employees hired before 2021-07-01, newest qualifying hire first. Return columns: hire_date, last_name, first_name. Order results by: hire_date DESC, id.
List employees hired before 2022-01-01, newest qualifying hire first. Return columns: hire_date, last_name, first_name. Order results by: hire_date DESC, id.
List employees hired before 2022-02-01, newest qualifying hire first. Return columns: hire_date, last_name, first_name. Order results by: hire_date DESC, id.
List orders whose total is greater than 250. Return columns: id, status, customer_id, total_amount. Order results by: total_amount DESC, id.
List orders whose total is greater than 500. Return columns: id, status, customer_id, total_amount. Order results by: total_amount DESC, id.
Showing the first 60 of 98 challenges in this learning path.
Browse and filter all challenges in the Practice Arena