Year 10 Digital Technology
You've already built a Netflix database in Microsoft Access. Now learn the language that powers every database on the planet — from Netflix itself to your school's student records.
Think back to your Netflix database. You had four tables full of information about subscribers, countries, movies, and viewing history. But how does Netflix actually use that data? How does it know what to recommend to you? How does it know which country has the most active subscribers?
The answer is SQL — Structured Query Language. SQL is the language you use to talk to a database and ask it questions. Instead of scrolling through thousands of rows by hand, you write a short instruction and the database gives you exactly the answer you need.
Microsoft Access gives you a visual interface: you click buttons, fill in forms, and drag things around. SQL does the same things, but with words. That might sound harder, but it's actually more powerful — you can do things in one line of SQL that would take dozens of clicks in Access.
Open the Subscribers table → scroll until you find Australian subscribers → count them manually.
This unit focuses on SELECT first, because it's the foundation of everything. Once you can read data, adding and changing it is straightforward.
To keep things familiar, we're using a version of your Netflix database. Click the Dataset tab at any time to see the full tables. Here's a quick preview of what's in each one:
Lesson 1 of 2 · ~100 minutes
Learn to read data from a database — choosing exactly which columns you want, from which table, filtered to show only the rows you care about.
SELECT *The simplest possible SQL query selects every row and every column from a table. The asterisk (*) means "everything".
Think of this as saying: "Show me everything inside the Subscribers table."
Try it yourself. The editor below already has this query. Press Run to see the result.
Most of the time you don't need every column. You can list just the ones you want, separated by commas.
This says: "From the Subscribers table, show me only the FirstName, LastName, and Plan columns." Everything else is ignored.
Challenge: Modify the query above to show only FirstName and Email. Check your answer by running it.
The WHERE clause filters the rows returned. Only rows where the condition is true will appear in your results.
This says: "Show me all columns from Subscribers, but only for subscribers who are on the Premium plan."
WHERE can use all the comparison operators you know from maths:
= equals<> not equal to (also written !=)> greater than | < less than>= greater than or equal | <= less than or equalYou can chain multiple conditions together using AND (both must be true) or OR (either can be true).
Challenge: Write a query that finds all subscribers on the 'Basic' plan who joined from country code 'AU'. Use the editor above.
Test yourself on what you've learned so far. Answers are saved automatically.
SELECT *?SELECT * FROM Movies WHERE Genre = Action. What is wrong with this query?Arrange the SQL clauses below in the correct order to answer: "Show me the first name and email of all subscribers on the Premium plan."
Drag each clause into the numbered slots below. The order of SQL clauses matters!
Drop each SQL keyword into the correct description.
✅ End of Lesson 1 checkpoint. You should now be able to select specific columns, filter rows with WHERE, and combine conditions. Head to Lesson 2 when you're ready.
Lesson 2 of 2 · ~100 minutes
Sort your results, modify existing records, add new ones, and ask questions that span two tables at once.
By default, a query returns rows in the order they were stored. ORDER BY lets you sort the results by any column — either ascending (A→Z, 0→9) or descending (Z→A, 9→0).
ASC = ascending (default, smallest first) | DESC = descending (largest first)
You can combine ORDER BY with WHERE:
UPDATE lets you change the value of one or more fields in existing records. Always use a WHERE clause — without it, you'll update every single row in the table!
UPDATE Subscribers SET Plan = 'Premium' would move every subscriber to Premium — no undo button in real databases!
INSERT INTO adds a new row to a table. You list the column names, then provide the matching values in the same order.
This is where SQL becomes truly powerful. Your Netflix database has four tables that are linked together. A JOIN lets you pull information from two (or more) tables at once by matching values in related columns.
Remember: in your Access database, the Subscribers table has a CountryCode field that links to the Countries table. In SQL, we can ask: "Show me each subscriber's name AND their full country name."
The ON clause tells SQL how to match rows between the two tables — using the CountryCode that appears in both. This is exactly the relationship you set up with Referential Integrity in Access.
You can add WHERE and ORDER BY to any JOIN query, making it even more specific:
Can you figure out which subscriber watched which movie? ViewingHistory links SubscriberID and MovieID — but it only stores the numbers. Use two JOINs to get the actual names:
ORDER BY DurationMins DESC do?UPDATE Movies SET Rating = 'G' without a WHERE clause. What happens?Arrange all five clauses to produce: "Show me the title and release year of all Action movies, newest first."
A JOIN query has four key parts. Match each term to its role.
Extension task — assessment bonus
Read one article from the link below, then write a personal reflection of 100–200 words. Explain what the article was about and what your personal opinion is. Your reflection will be saved and included in your submission.
This will permanently delete all your quiz answers, drag responses, and reflection from this browser. Download a backup first if you want to keep a copy.
Reference
Every SQL editor in this unit runs against this data. Use this page to understand the tables and plan your queries.
Reference table. CountryCode is the primary key — it appears as a foreign key in Subscribers.
One row per subscriber. CountryCode is a foreign key linking to Countries.
One row per movie. No foreign keys — it is linked from ViewingHistory.
Records each viewing event. SubscriberID links to Subscribers; MovieID links to Movies.
My Progress
Review your results, download a backup, or submit your work for assessment.
Your answers from the multiple-choice quizzes across both lessons.
Your extension reflection (if completed):
Download a backup of your progress, or copy your summary to paste into SIMON.