SQL practice

Filter by difficulty, use hints, reveal solutions and save attempts locally.

1. Practice SQL Introduction by building one step of a reporting query and checking the result.

code-writing
beginnerSQL Introduction

1. Start from the SQL Introduction lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

2. Practice SELECT by building one step of a reporting query and checking the result.

code-fix
beginnerSELECT

1. Start from the SELECT lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

3. Practice WHERE by building one step of a reporting query and checking the result.

output
beginnerWHERE

1. Start from the WHERE lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

4. Practice ORDER BY by building one step of a reporting query and checking the result.

fill-blank
beginnerORDER BY

1. Start from the ORDER BY lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

5. Practice LIMIT by building one step of a reporting query and checking the result.

true-false
beginnerLIMIT

1. Start from the LIMIT lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

6. Practice INSERT by building one step of a reporting query and checking the result.

mini-project
beginnerINSERT

1. Start from the INSERT lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

7. Practice UPDATE by building one step of a reporting query and checking the result.

mcq
beginnerUPDATE

1. Start from the UPDATE lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

8. Practice DELETE by building one step of a reporting query and checking the result.

code-writing
beginnerDELETE

1. Start from the DELETE lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

9. Practice GROUP BY by building one step of a reporting query and checking the result.

code-fix
beginnerGROUP BY

1. Start from the GROUP BY lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

10. Practice HAVING by building one step of a reporting query and checking the result.

output
beginnerHAVING

1. Start from the HAVING lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

11. Practice JOIN by building one step of a reporting query and checking the result.

fill-blank
intermediateJOIN

1. Start from the JOIN lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

12. Practice Subqueries by building one step of a reporting query and checking the result.

true-false
intermediateSubqueries

1. Start from the Subqueries lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

13. Practice Constraints by building one step of a reporting query and checking the result.

mini-project
intermediateConstraints

1. Start from the Constraints lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

14. Practice Views by building one step of a reporting query and checking the result.

mcq
intermediateViews

1. Start from the Views lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

15. Practice Indexes by building one step of a reporting query and checking the result.

code-writing
intermediateIndexes

1. Start from the Indexes lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

16. Practice Transactions by building one step of a reporting query and checking the result.

code-fix
intermediateTransactions

1. Start from the Transactions lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

17. Practice Stored Procedures by building one step of a reporting query and checking the result.

output
intermediateStored Procedures

1. Start from the Stored Procedures lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

18. Practice Query Optimization by building one step of a reporting query and checking the result.

fill-blank
intermediateQuery Optimization

1. Start from the Query Optimization lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

19. Practice Database Project by building one step of a reporting query and checking the result.

true-false
intermediateDatabase Project

1. Start from the Database Project lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

20. Practice Data Types by building one step of a reporting query and checking the result.

mini-project
intermediateData Types

1. Start from the Data Types lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

21. Practice Aggregates by building one step of a reporting query and checking the result.

mcq
advancedAggregates

1. Start from the Aggregates lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

22. Practice Aliases by building one step of a reporting query and checking the result.

code-writing
advancedAliases

1. Start from the Aliases lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

23. Practice NULL Handling by building one step of a reporting query and checking the result.

code-fix
advancedNULL Handling

1. Start from the NULL Handling lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

24. Practice CASE Expressions by building one step of a reporting query and checking the result.

output
advancedCASE Expressions

1. Start from the CASE Expressions lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

25. Practice Relationships by building one step of a reporting query and checking the result.

fill-blank
advancedRelationships

1. Start from the Relationships lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

26. Practice ER Diagrams by building one step of a reporting query and checking the result.

true-false
advancedER Diagrams

1. Start from the ER Diagrams lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

27. Practice Security Basics by building one step of a reporting query and checking the result.

mini-project
advancedSecurity Basics

1. Start from the Security Basics lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

28. Practice Backup Basics by building one step of a reporting query and checking the result.

mcq
advancedBackup Basics

1. Start from the Backup Basics lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

29. Practice Reporting Queries by building one step of a reporting query and checking the result.

code-writing
advancedReporting Queries

1. Start from the Reporting Queries lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.

30. Practice SQL Review by building one step of a reporting query and checking the result.

code-fix
advancedSQL Review

1. Start from the SQL Review lesson example.

2. Use customers, payments and order totals instead of placeholder text.

3. Run the example and compare output before polishing.