Bird
Raised Fist0
SQLquery~3 mins

Why UPDATE multiple columns in SQL? - Purpose & Use Cases

Choose your learning style10 modes available
The Big Idea

What if you could fix many details with just one simple command instead of hours of typing?

The Scenario

Imagine you have a big spreadsheet with customer info. You want to change both their phone number and address. Doing this by hand means opening each row and typing the new info one by one.

The Problem

This manual way is slow and tiring. You might make mistakes, miss some rows, or spend hours updating just a few details. It's easy to lose track and get frustrated.

The Solution

Using UPDATE multiple columns in SQL lets you change many pieces of information in one go. You write one simple command, and the database updates all the right spots quickly and correctly.

Before vs After
✗ Before
Change phone number, then change address separately for each customer.
✓ After
UPDATE customers SET phone = '123-4567', address = 'New Street 5' WHERE id = 10;
What It Enables

This lets you fix or improve many details at once, saving time and avoiding errors.

Real Life Example

A store updates both the contact number and shipping address for a customer after they move, all with one simple command.

Key Takeaways

Manual updates are slow and error-prone.

UPDATE multiple columns changes many fields at once.

This saves time and keeps data accurate.

Practice

(1/5)
1. What does the SQL UPDATE statement do when you specify multiple columns in the SET clause?
easy
A. It deletes the rows that match the condition.
B. It only updates the first column listed and ignores the rest.
C. It creates new rows with the specified column values.
D. It changes the values of all specified columns in the selected rows.

Solution

  1. Step 1: Understand the UPDATE statement

    The UPDATE statement modifies existing rows in a table.
  2. Step 2: Effect of multiple columns in SET clause

    When multiple columns are listed in SET, all those columns are updated in the rows that match the WHERE condition.
  3. Final Answer:

    It changes the values of all specified columns in the selected rows. -> Option D
  4. Quick Check:

    UPDATE with multiple columns updates all listed columns [OK]
Hint: SET updates all listed columns together [OK]
Common Mistakes:
  • Thinking UPDATE adds new rows
  • Believing UPDATE deletes rows
  • Assuming only first column updates
2. Which of the following is the correct syntax to update two columns, price and stock, in a table named products?
easy
A. UPDATE products SET price = 10, stock = 50 WHERE id = 1;
B. UPDATE products (price = 10, stock = 50) WHERE id = 1;
C. UPDATE products SET (price, stock) = (10, 50) WHERE id = 1;
D. UPDATE products WHERE id = 1 SET price = 10, stock = 50;

Solution

  1. Step 1: Recall correct UPDATE syntax

    The correct syntax is UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition;
  2. Step 2: Check each option

    UPDATE products SET price = 10, stock = 50 WHERE id = 1; matches the correct syntax exactly. The other options have syntax errors.
  3. Final Answer:

    UPDATE products SET price = 10, stock = 50 WHERE id = 1; -> Option A
  4. Quick Check:

    SET column = value pairs separated by commas [OK]
Hint: Use SET column=value, column=value syntax [OK]
Common Mistakes:
  • Using parentheses incorrectly in SET clause
  • Placing WHERE before SET
  • Missing commas between column assignments
3. Given the table employees with columns salary and bonus, what will be the result of this query?
UPDATE employees SET salary = salary + 1000, bonus = 500 WHERE department = 'Sales';
medium
A. All employees get salary and bonus updated regardless of department.
B. Only the salary of Sales employees increases; bonus remains unchanged.
C. All employees in Sales get their salary increased by 1000 and bonus set to 500.
D. Syntax error because multiple columns cannot be updated together.

Solution

  1. Step 1: Understand the WHERE clause effect

    The WHERE clause limits updates to rows where department = 'Sales'.
  2. Step 2: Analyze SET clause changes

    Salary increases by 1000 and bonus is set to 500 for those rows only.
  3. Final Answer:

    All employees in Sales get their salary increased by 1000 and bonus set to 500. -> Option C
  4. Quick Check:

    WHERE filters rows; SET updates all listed columns [OK]
Hint: WHERE limits rows; SET updates all columns listed [OK]
Common Mistakes:
  • Ignoring WHERE and updating all rows
  • Thinking bonus stays unchanged
  • Believing multiple columns update causes error
4. Identify the error in this SQL statement:
UPDATE orders SET status = 'Shipped' stock = 0 WHERE order_id = 123;
medium
A. WHERE clause should come before SET clause.
B. Missing comma between column assignments in SET clause.
C. Incorrect table name used.
D. Quotes around 'Shipped' should be double quotes.

Solution

  1. Step 1: Check SET clause syntax

    Multiple columns must be separated by commas in SET clause.
  2. Step 2: Identify missing comma

    Between status = 'Shipped' and stock = 0, a comma is missing.
  3. Final Answer:

    Missing comma between column assignments in SET clause. -> Option B
  4. Quick Check:

    Separate columns with commas in SET [OK]
Hint: Put commas between each column=value pair [OK]
Common Mistakes:
  • Omitting commas between columns
  • Placing WHERE before SET
  • Using wrong quotes for strings
5. You want to update the price and discount columns in the products table only for items where category is 'Electronics' and current stock is less than 10. Which query correctly does this?
hard
A. UPDATE products SET price = price * 0.9, discount = 10 WHERE category = 'Electronics' AND stock < 10;
B. UPDATE products SET price = price * 0.9, discount = 10 WHERE category = 'Electronics' OR stock < 10;
C. UPDATE products SET price = price * 0.9 discount = 10 WHERE category = 'Electronics' AND stock < 10;
D. UPDATE products SET price = price * 0.9, discount = 10 WHERE category = 'Electronics' AND stock > 10;

Solution

  1. Step 1: Understand the condition requirements

    We want to update only rows where category is 'Electronics' AND stock is less than 10.
  2. Step 2: Check each option's WHERE clause and syntax

    UPDATE products SET price = price * 0.9, discount = 10 WHERE category = 'Electronics' AND stock < 10; uses AND with correct conditions and proper syntax. UPDATE products SET price = price * 0.9, discount = 10 WHERE category = 'Electronics' OR stock < 10; uses OR, which updates more rows. UPDATE products SET price = price * 0.9 discount = 10 WHERE category = 'Electronics' AND stock < 10; misses a comma between assignments. UPDATE products SET price = price * 0.9, discount = 10 WHERE category = 'Electronics' AND stock > 10; uses stock > 10, which is incorrect.
  3. Final Answer:

    UPDATE products SET price = price * 0.9, discount = 10 WHERE category = 'Electronics' AND stock < 10; -> Option A
  4. Quick Check:

    Use AND for combined conditions and commas between columns [OK]
Hint: Use AND for all conditions; separate columns with commas [OK]
Common Mistakes:
  • Using OR instead of AND in WHERE
  • Missing commas between columns
  • Wrong comparison operators in WHERE
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