🗄️ SQL
Practice SQL for software testing with SELECT, JOIN, GROUP BY, window functions, data validation scenarios and interactive exercises.
Master SQL for test automation — query databases to verify backend state, seed test data, validate integrity, and pass any SQL interview. No prior database experience needed.
What you can learn on this page
- 🎯 What is SQL & Why Does Every QA Engineer Need It? — SQL is the language you use to interrogate a database — like writing precise instructions to an assistant: 'bring me only 2024 entries above $1000, sorted by date.' But if the UI already shows results, why bother with SQL? Because what the interface shows and
- 📦 Installation — SQL setup varies dramatically depending on the database engine you choose — SQLite needs just one library, while PostgreSQL requires starting a server process, creating users, and configuring connection parameters. But how do you decide between 'simplest' and
- 🟢 CREATE TABLE — CREATE TABLE is like casting the column headers and accepted data types of an Excel spreadsheet into a permanent mold — with one key difference: every piece of data entered into the table must conform to that mold, or the database rejects it. But if Java class
- 🟢 INSERT INTO — INSERT INTO resembles filling out a form where completion means something is officially recorded — you line up the values for each column in order, and the database writes that data to disk permanently. But if `list.add(newElement)` is enough in Java, why must
- 🟢 SELECT & Sort — SELECT is like a manager instructing an assistant: 'bring me tests from last week, staging only, longer than 3 seconds, that failed — sorted slowest first' — you describe the result, the assistant (the database engine) decides which indexes to hit and in what
- 🟢 UPDATE & DELETE — Think of UPDATE and DELETE as standing over a class roster with a pencil and an eraser. The twist: you don't name who gets crossed out, you describe them — "everyone with more than 3 absences". Forget to say the description and just say "erase&q
- 🟢 NULL Values — Think of NULL as an empty box on a survey form — and note that it is not the same as a box containing 0. Someone who writes "0" under "how many siblings?" has answered; someone who leaves it blank has not. NULL means 'unknown', not 'no valu
- 🟢 SQL Query Order — The order in which you write a SQL query and the order in which the database engine processes it are completely different — SELECT appears at the top but executes almost last. Think of a factory assembly line: first pull raw materials from the warehouse (FROM)