Bird
Raised Fist0
Intro to Computingfundamentals~10 mins

Relational database basics in Intro to Computing - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to select all columns from the table named 'students'.

Intro to Computing
SELECT [1] FROM students;
Drag options to blanks, or click blank then click option'
Aeverything
B*
Ccolumns
Dall
Attempts:
3 left
💡 Hint
Common Mistakes
Using words like 'all' or 'columns' instead of the symbol *.
Leaving the blank empty.
2fill in blank
medium

Complete the code to filter records where the age is greater than 18.

Intro to Computing
SELECT * FROM users WHERE age [1] 18;
Drag options to blanks, or click blank then click option'
A>
B=
C<
D<=
Attempts:
3 left
💡 Hint
Common Mistakes
Using '=' which means exactly equal.
Using '<' which means less than.
3fill in blank
hard

Fix the error in the SQL statement to count the number of rows in the 'orders' table.

Intro to Computing
SELECT COUNT([1]) FROM orders;
Drag options to blanks, or click blank then click option'
Aorder_id
Brows
Call
D*
Attempts:
3 left
💡 Hint
Common Mistakes
Using words like 'all' or 'rows' which are not valid in COUNT.
Using a column name that might have NULL values.
4fill in blank
hard

Fill both blanks to create a table named 'employees' with columns 'id' as integer and 'name' as text.

Intro to Computing
CREATE TABLE employees (id [1], name [2]);
Drag options to blanks, or click blank then click option'
AINTEGER
BVARCHAR
CTEXT
DNUMBER
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'NUMBER' which is not standard SQL type here.
Using 'VARCHAR' without specifying length.
5fill in blank
hard

Fill all three blanks to select 'name' and 'age' from 'people' where 'age' is less than 30.

Intro to Computing
SELECT [1], [2] FROM people WHERE [3] < 30;
Drag options to blanks, or click blank then click option'
Aname
Bage
Dperson
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'person' which is not a column name.
Mixing up the order of columns.

Practice

(1/5)
1. What is the main purpose of a relational database?
easy
A. To run computer programs
B. To store data as plain text files
C. To organize data into tables with rows and columns
D. To create graphics and charts

Solution

  1. Step 1: Understand the structure of relational databases

    Relational databases store data in tables made of rows and columns, similar to a spreadsheet.
  2. Step 2: Compare options with this structure

    Only 'To organize data into tables with rows and columns' matches the core purpose of relational databases.
  3. Final Answer:

    To organize data into tables with rows and columns -> Option C
  4. Quick Check:

    Relational database = tables with rows and columns [OK]
Hint: Think of data like a spreadsheet with rows and columns [OK]
Common Mistakes:
  • Confusing databases with file storage
  • Thinking databases create graphics
  • Believing databases run programs
2. Which SQL command is used to add new data into a table?
easy
A. SELECT
B. INSERT
C. CREATE
D. DELETE

Solution

  1. Step 1: Recall SQL commands and their purposes

    SELECT retrieves data, CREATE makes tables, DELETE removes data, and INSERT adds new data.
  2. Step 2: Match the command to adding data

    INSERT is the command used to add new rows of data into a table.
  3. Final Answer:

    INSERT -> Option B
  4. Quick Check:

    Adding data = INSERT [OK]
Hint: INSERT means putting new data inside [OK]
Common Mistakes:
  • Using SELECT to add data
  • Confusing CREATE with INSERT
  • Thinking DELETE adds data
3. Given the table Students with columns ID, Name, and Age, what will this SQL query return?
SELECT Name FROM Students WHERE Age > 20;
medium
A. All student names where age is greater than 20
B. All student IDs where age is greater than 20
C. All student ages where age is greater than 20
D. All data from the Students table

Solution

  1. Step 1: Analyze the SELECT clause

    The query selects the Name column only, so the output will be student names.
  2. Step 2: Analyze the WHERE condition

    The condition Age > 20 filters rows to only those students older than 20.
  3. Final Answer:

    All student names where age is greater than 20 -> Option A
  4. Quick Check:

    SELECT Name with Age > 20 = student names over 20 [OK]
Hint: SELECT column filters output; WHERE filters rows [OK]
Common Mistakes:
  • Thinking SELECT returns all columns
  • Ignoring the WHERE condition
  • Confusing column names in SELECT
4. Identify the error in this SQL statement:
INSERT INTO Students (ID, Name Age) VALUES (1, 'Alice', 22);
medium
A. Missing comma between column names
B. Incorrect table name
C. VALUES keyword is misspelled
D. Extra parentheses around values

Solution

  1. Step 1: Check the column list syntax

    The columns are listed as ID, Name Age without a comma between Name and Age.
  2. Step 2: Confirm correct syntax for INSERT

    Column names must be separated by commas. Missing comma causes syntax error.
  3. Final Answer:

    Missing comma between column names -> Option A
  4. Quick Check:

    Columns need commas between names [OK]
Hint: Check commas between column names carefully [OK]
Common Mistakes:
  • Overlooking missing commas
  • Assuming VALUES is misspelled
  • Thinking parentheses are extra
5. You have two tables: Orders(OrderID, CustomerID, Amount) and Customers(CustomerID, Name). Which SQL query correctly lists all orders with the customer names?
hard
A. SELECT OrderID, Name FROM Orders INNER JOIN Customers ON Orders.OrderID = Customers.CustomerID;
B. SELECT OrderID, Name FROM Orders, Customers WHERE Orders.OrderID = Customers.CustomerID;
C. SELECT OrderID, Name FROM Orders LEFT JOIN Customers ON Orders.Amount = Customers.CustomerID;
D. SELECT Orders.OrderID, Customers.Name FROM Orders JOIN Customers ON Orders.CustomerID = Customers.CustomerID;

Solution

  1. Step 1: Understand the relationship between tables

    Orders and Customers are linked by CustomerID, so join must use this key.
  2. Step 2: Check each JOIN condition

    SELECT Orders.OrderID, Customers.Name FROM Orders JOIN Customers ON Orders.CustomerID = Customers.CustomerID; joins on Orders.CustomerID = Customers.CustomerID, which is correct. Others join on wrong columns.
  3. Final Answer:

    SELECT Orders.OrderID, Customers.Name FROM Orders JOIN Customers ON Orders.CustomerID = Customers.CustomerID; -> Option D
  4. Quick Check:

    Join tables on matching CustomerID [OK]
Hint: Join tables using matching keys (CustomerID) [OK]
Common Mistakes:
  • Joining on wrong columns
  • Mixing OrderID with CustomerID
  • Using incorrect JOIN types