The UPDATE statement changes existing data in a table. It modifies one or more rows based on given conditions.
Click to reveal answer
beginner
Why is the WHERE clause important in an UPDATE statement?
The WHERE clause limits which rows get updated. Without it, all rows in the table will be changed.
Click to reveal answer
beginner
Write the syntax of an UPDATE statement with a WHERE clause.
UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition;
Click to reveal answer
intermediate
What happens if you run an UPDATE statement without a WHERE clause?
All rows in the table will be updated with the new values, which might cause unintended data changes.
Click to reveal answer
beginner
How can you update multiple columns in one UPDATE statement?
You list each column and its new value separated by commas after SET. For example: SET col1 = val1, col2 = val2.
Click to reveal answer
What does the WHERE clause do in an UPDATE statement?
ASpecifies new values for columns
BDeletes rows from the table
CCreates a new table
DLimits which rows are updated
✗ Incorrect
The WHERE clause filters rows so only those matching the condition get updated.
What happens if you omit the WHERE clause in an UPDATE statement?
AAll rows in the table are updated
BNo rows are updated
COnly one row is updated
DThe table is deleted
✗ Incorrect
Without WHERE, the update applies to every row in the table.
Which of these is the correct syntax to update the 'price' column to 10 where 'id' equals 5?
ASET price = 10 WHERE id = 5 UPDATE products;
BUPDATE products WHERE id = 5 SET price = 10;
CUPDATE products SET price = 10 WHERE id = 5;
DUPDATE products price = 10 WHERE id = 5;
✗ Incorrect
The correct syntax places SET before the column assignments and WHERE after.
How do you update multiple columns in one UPDATE statement?
ASET col1 = val1, col2 = val2
BUPDATE col1 = val1, col2 = val2
CWHERE col1 = val1, col2 = val2
DSET col1 = val1 AND col2 = val2
✗ Incorrect
Multiple columns are separated by commas after the SET keyword.
Which keyword is mandatory to specify which rows to update?
AFROM
BWHERE
CSELECT
DJOIN
✗ Incorrect
The WHERE clause specifies the condition to select rows for updating.
Explain how to safely update a specific row in a table using the UPDATE statement with a WHERE clause.
Think about how to avoid changing all rows accidentally.
You got /3 concepts.
Describe what could happen if you forget the WHERE clause in an UPDATE statement.
Consider the impact on the whole table.
You got /3 concepts.
Practice
(1/5)
1. What does the WHERE clause do in an UPDATE statement in MySQL?
easy
A. It specifies which rows should be updated.
B. It creates a new table.
C. It deletes rows from the table.
D. It selects rows to display.
Solution
Step 1: Understand the purpose of UPDATE
The UPDATE command changes data in existing rows of a table.
Step 2: Role of WHERE clause
The WHERE clause limits which rows get changed. Without it, all rows update.
Final Answer:
It specifies which rows should be updated. -> Option A
Quick Check:
WHERE limits rows to update [OK]
Hint: WHERE filters rows to update; no WHERE updates all [OK]
Common Mistakes:
Thinking WHERE creates or deletes rows
Confusing UPDATE with SELECT
Ignoring WHERE causes all rows to update
2. Which of the following is the correct syntax to update the salary to 5000 for employees with id 10 in MySQL?
easy
A. UPDATE employees SET salary = 5000 AND id = 10;
B. UPDATE employees SET salary = 5000 WHERE id = 10;
C. UPDATE employees SET salary WHERE id = 10 = 5000;
D. UPDATE employees WHERE id = 10 SET salary = 5000;
Solution
Step 1: Identify correct UPDATE syntax
The correct order is: UPDATE table SET column = value WHERE condition.
Step 2: Check each option
UPDATE employees SET salary = 5000 WHERE id = 10; follows correct syntax. Others have misplaced clauses or wrong operators.
Final Answer:
UPDATE employees SET salary = 5000 WHERE id = 10; -> Option B
Quick Check:
UPDATE SET column=value WHERE condition [OK]
Hint: SET comes before WHERE in UPDATE statements [OK]
Common Mistakes:
Placing WHERE before SET
Using AND instead of WHERE
Incorrect assignment syntax
3. Given the table products with columns id, name, and price, what will be the price of product with id = 3 after running this query?
UPDATE products SET price = price + 10 WHERE id = 3;
Assume the original price for id = 3 was 50.
medium
A. 10
B. 50
C. 60
D. NULL
Solution
Step 1: Understand the UPDATE operation
The query adds 10 to the current price for the product where id = 3.
Step 2: Calculate new price
Original price is 50, so 50 + 10 = 60.
Final Answer:
60 -> Option C
Quick Check:
50 + 10 = 60 [OK]
Hint: Add to existing value only for rows matching WHERE [OK]
Common Mistakes:
Ignoring WHERE and updating all rows
Setting price to 10 instead of adding
Confusing original and updated values
4. Identify the error in this MySQL query:
UPDATE users SET age = 30 WHERE;
medium
A. SET keyword is misplaced.
B. Table name is missing.
C. UPDATE keyword is misspelled.
D. Missing condition after WHERE clause.
Solution
Step 1: Analyze the query structure
The query has UPDATE, SET, and WHERE keywords but WHERE has no condition.
Step 2: Identify the error
WHERE must be followed by a condition to specify which rows to update.
Final Answer:
Missing condition after WHERE clause. -> Option D
Quick Check:
WHERE requires condition [OK]
Hint: WHERE must always have a condition [OK]
Common Mistakes:
Leaving WHERE empty
Misplacing SET and WHERE
Forgetting semicolon
5. You have a table orders with columns order_id, status, and amount. You want to increase the amount by 20% only for orders with status 'pending' and amount less than 100. Which query correctly does this?
hard
A. UPDATE orders SET amount = amount * 1.2 WHERE status = 'pending' AND amount < 100;
B. UPDATE orders SET amount = amount + 20 WHERE status = 'pending' OR amount < 100;
C. UPDATE orders SET amount = amount * 1.2 WHERE status = 'pending' OR amount < 100;
D. UPDATE orders SET amount = amount * 0.2 WHERE status = 'pending' AND amount < 100;
Solution
Step 1: Understand the condition
We want to update only rows where status is 'pending' AND amount is less than 100.
Step 2: Calculate new amount
Increase by 20% means multiply amount by 1.2.
Step 3: Check options
UPDATE orders SET amount = amount * 1.2 WHERE status = 'pending' AND amount < 100; correctly uses AND and multiplies amount by 1.2. Others use OR or wrong calculations.
Final Answer:
UPDATE orders SET amount = amount * 1.2 WHERE status = 'pending' AND amount < 100; -> Option A
Quick Check:
AND condition + *1.2 [OK]
Hint: Use AND for multiple conditions in WHERE [OK]
Common Mistakes:
Using OR instead of AND
Adding fixed 20 instead of 20%
Multiplying by 0.2 instead of 1.2
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.