Bird
Raised Fist0
SQLquery~30 mins

UPDATE single column in SQL - Mini Project: Build & Apply

Choose your learning style10 modes available
Update a Single Column in a Database Table
📖 Scenario: You manage a small bookstore database. One of the books has a wrong price, and you need to fix it.
🎯 Goal: Update the price of a specific book in the books table using an UPDATE statement that changes only the price column.
📋 What You'll Learn
Create a table called books with columns id, title, and price.
Insert three books with given ids, titles, and prices.
Set a variable for the new price value.
Write an UPDATE query to change the price of the book with id = 2 to the new price.
Ensure only the price column is updated.
💡 Why This Matters
🌍 Real World
Updating prices or details of products in a store database is a common task in retail and e-commerce.
💼 Career
Database administrators and developers often need to update records safely and correctly using SQL UPDATE statements.
Progress0 / 4 steps
1
Create the books table and insert data
Write SQL statements to create a table called books with columns id (integer), title (text), and price (decimal). Then insert these three rows exactly: (1, 'The Great Gatsby', 10.99), (2, '1984', 8.99), and (3, 'To Kill a Mockingbird', 12.50).
SQL
Hint

Use CREATE TABLE to define the table and INSERT INTO to add rows.

2
Set the new price value
Create a variable called new_price and set it to 9.99. Use a SQL variable declaration or a comment to indicate this value for the update.
SQL
Hint

If your SQL environment does not support variables, use a comment to indicate the new price value.

3
Write the UPDATE statement to change the price
Write an UPDATE statement that sets the price column to 9.99 for the book where id = 2. Use the exact column and table names.
SQL
Hint

Use UPDATE with SET and WHERE to change only the price of the book with id 2.

4
Complete the update with a commit statement
Add a COMMIT; statement after the UPDATE to save the changes permanently.
SQL
Hint

Use COMMIT; to save your update permanently in the database.

Practice

(1/5)
1. What does the SQL statement UPDATE employees SET salary = 5000 WHERE id = 3; do?
easy
A. It changes the salary to 5000 for the employee with id 3.
B. It adds a new employee with salary 5000 and id 3.
C. It deletes the employee with id 3.
D. It shows the salary of employee with id 3.

Solution

  1. Step 1: Understand the UPDATE statement

    The UPDATE command changes existing data in a table.
  2. Step 2: Analyze the SET and WHERE clauses

    SET salary = 5000 changes the salary column, WHERE id = 3 limits the change to the employee with id 3.
  3. Final Answer:

    It changes the salary to 5000 for the employee with id 3. -> Option A
  4. Quick Check:

    UPDATE with SET and WHERE changes specified rows [OK]
Hint: UPDATE changes data; SET picks column; WHERE picks rows [OK]
Common Mistakes:
  • Thinking UPDATE adds new rows
  • Forgetting WHERE updates all rows
  • Confusing UPDATE with SELECT
2. Which of the following is the correct syntax to update the price column to 20 in the products table for product with id 10?
easy
A. UPDATE products SET price = 20 WHERE id = 10;
B. UPDATE products price = 20 WHERE id = 10;
C. UPDATE products SET price WHERE id = 10 = 20;
D. UPDATE products SET price = 20;

Solution

  1. Step 1: Check the UPDATE syntax

    The correct syntax is UPDATE table_name SET column = value WHERE condition;
  2. Step 2: Validate each option

    UPDATE products SET price = 20 WHERE id = 10; matches the correct syntax with SET and WHERE clauses properly used.
  3. Final Answer:

    UPDATE products SET price = 20 WHERE id = 10; -> Option A
  4. Quick Check:

    Correct UPDATE syntax uses SET column = value and WHERE [OK]
Hint: Always use SET column = value and WHERE condition [OK]
Common Mistakes:
  • Omitting SET keyword
  • Placing WHERE before SET
  • Missing semicolon at end
3. Given the table students with columns id, name, and grade, what will be the result of this query?
UPDATE students SET grade = 90 WHERE name = 'Alice';

Assuming the table before update:
id | name  | grade
1  | Alice | 85
2  | Bob   | 88
3  | Alice | 92
medium
A. No rows will be updated because name is not unique.
B. Only the first row with name 'Alice' will be updated.
C. Both rows with name 'Alice' will have grade updated to 90.
D. All rows in the table will have grade set to 90.

Solution

  1. Step 1: Understand the WHERE clause effect

    WHERE name = 'Alice' matches all rows where name is exactly 'Alice'.
  2. Step 2: Apply UPDATE to matching rows

    Both rows with name 'Alice' (id 1 and 3) will have their grade set to 90.
  3. Final Answer:

    Both rows with name 'Alice' will have grade updated to 90. -> Option C
  4. Quick Check:

    UPDATE affects all rows matching WHERE condition [OK]
Hint: WHERE filters all matching rows, not just one [OK]
Common Mistakes:
  • Assuming only one row updates with non-unique WHERE
  • Thinking UPDATE without WHERE updates one row
  • Confusing UPDATE with SELECT
4. Identify the error in this SQL statement:
UPDATE orders SET status 'shipped' WHERE order_id = 101;
medium
A. Incorrect table name.
B. Missing equal sign (=) between column and value.
C. Using single quotes around column name.
D. Missing WHERE clause.

Solution

  1. Step 1: Check SET clause syntax

    SET clause must have column = value format. Here, equal sign is missing.
  2. Step 2: Verify other parts

    WHERE clause is present, table name looks correct, and no quotes around column name.
  3. Final Answer:

    Missing equal sign (=) between column and value. -> Option B
  4. Quick Check:

    SET requires column = value syntax [OK]
Hint: SET needs column = value, not just column value [OK]
Common Mistakes:
  • Omitting equal sign in SET
  • Forgetting WHERE causes all rows update
  • Using quotes incorrectly around column names
5. You have a table inventory with columns item_id, quantity, and price. You want to increase the price by 10% only for items with quantity less than 5. Which SQL statement correctly updates the price column?
hard
A. UPDATE inventory SET price = price + 10 WHERE quantity < 5;
B. UPDATE inventory SET price = price + 0.10 WHERE quantity < 5;
C. UPDATE inventory SET price = price * 0.10 WHERE quantity < 5;
D. UPDATE inventory SET price = price * 1.10 WHERE quantity < 5;

Solution

  1. Step 1: Understand the requirement

    Increase price by 10% means multiply price by 1.10.
  2. Step 2: Check the WHERE condition

    Only update rows where quantity is less than 5.
  3. Step 3: Evaluate each option

    UPDATE inventory SET price = price * 1.10 WHERE quantity < 5; correctly multiplies price by 1.10 with proper WHERE clause.
  4. Final Answer:

    UPDATE inventory SET price = price * 1.10 WHERE quantity < 5; -> Option D
  5. Quick Check:

    Multiply price by 1.10 to increase by 10% [OK]
Hint: Multiply price by 1.10 to increase by 10% [OK]
Common Mistakes:
  • Adding 10 instead of 10%
  • Multiplying by 0.10 reduces price
  • Adding 0.10 increases price by 0.10 units only
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard