Welcome to SQL: Talking to a Database
SQL (Structured Query Language, usually pronounced “sequel” or spelled out letter by letter) is how you ask a relational database for data — filtering, combining, and summarizing rows stored in tables. It was first developed at IBM in the 1970s, and despite being one of the oldest languages still in everyday use, it remains the standard way almost every serious application stores and retrieves structured data, from a small internal tool to a bank’s core transaction system.
Unlike Python, JavaScript, or Java, SQL is a declarative language — you don’t write step-by-step instructions for how to find the data; you describe what you want, and the database engine figures out the most efficient way to get it. This is a genuinely different way of thinking about a problem compared to the other courses on Tutoline, and it’s worth approaching with a slightly different mindset from the start.
What a table looks like
Think of a table the same way you’d think of a spreadsheet: rows are individual records, columns are fields shared by every record. A students table might have columns id, name, course, and score — every row in that table represents one student, and every student has a value (or a blank) in each of those four columns.
Your first query
SELECT name, score
FROM students
WHERE course = 'Python';
This reads almost like English: from the students table, give me the name and score columns, but only for rows where course equals 'Python'. Every query in this course builds on this same basic shape — SELECT which columns, FROM which table, WHERE which rows.
SQL keywords are (usually) not case-sensitive
Writing select instead of SELECT works identically in almost every database — but the convention across the industry is to write SQL keywords in uppercase and everything else (table names, column names, values) in lowercase or however they were originally created. Following this convention makes your queries far easier for another developer to scan at a glance.
Where to practice
You don’t need to install a full database server to follow along with this course. Free browser-based SQLite playgrounds (like sqliteonline.com) let you create a table and run every example here with no setup at all — that’s the fastest way to actually build the muscle memory this course is trying to teach.
Tip: type out every example yourself rather than just reading it — SQL syntax has a rhythm that only sticks once your fingers have typed it a few times.