🔄 SQL UPDATE Statement – How to Modify Data in SQL Tables
Need to correct or change existing data in your SQL database? The
UPDATEstatement is your go-to command for modifying values without deleting or recreating rows.
This tutorial walks you through the SQL UPDATE syntax, usage patterns, best practices, and real-world examples to help you confidently update your data.
📘 What is the SQL UPDATE Statement?
The UPDATE command in SQL is used to modify existing records in a table. You can update a single column, multiple columns, one row, or several rows at once based on a condition.
🧾 SQL UPDATE Syntax
UPDATE table_name
SET column1 = value1,
column2 = value2,
...
WHERE condition;
⚠️ Always use the
WHEREclause unless you want to update all rows in the table!
✅ Example: Update a Single Row
UPDATE employees
SET salary = 85000
WHERE emp_id = 101;
This updates the salary of the employee with ID 101.
✅ Example: Update Multiple Columns
UPDATE employees
SET emp_name = 'Neha Singh',
department = 'Finance'
WHERE emp_id = 102;
⚠️ Update All Rows (Use With Caution!)
UPDATE employees
SET bonus = 5000;
This adds a bonus to every employee in the table. Useful in some cases, but risky if done by mistake!
🧠 Use Conditional Expressions in UPDATE
You can use conditional logic like CASE:
UPDATE employees
SET bonus = CASE
WHEN department = 'Sales' THEN 10000
WHEN department = 'HR' THEN 5000
ELSE 3000
END;
🔄 Update Using a Subquery
UPDATE employees
SET salary = (
SELECT AVG(salary)
FROM employees
WHERE department = 'IT'
)
WHERE department = 'Marketing';
🔐 Best Practices for SQL UPDATE
- ✅ Always test your query with a
SELECTstatement first to preview affected rows. - ✅ Use transactions (
BEGIN,ROLLBACK,COMMIT) if making bulk updates. - 🚨 Never run an
UPDATEwithout aWHEREclause unless it’s intentional. - 🛡️ Backup critical data before large updates.
- 🧪 Use staging/test environments before production updates.
🎯 Real-Life Use Cases
| Use Case | Example SQL |
|---|---|
| Update salary after annual review | SET salary = salary * 1.10 |
| Change department for an employee | SET department = 'R&D' WHERE emp_id = 105 |
| Reset login attempts after password change | SET login_attempts = 0 |
| Update prices in an e-commerce catalog | SET price = price * 1.05 |
📝 Summary
UPDATEchanges one or more values in an existing row.- It supports conditional updates, multi-column updates, and subqueries.
- Always use
WHEREto target specific rows. - One of the most powerful tools in your SQL toolkit for data maintenance.
📚 Recommended Next Reads
- 🧱 SQL INSERT – Learn how to add new records
- 🧹 SQL DELETE – Remove specific rows safely
- 🔎 SQL SELECT – Query the data you’re updating
- 📋 SQL WHERE Clause – Master conditional filtering

