SQL UPDATE 语句详细讲解
UPDATE
语句在 SQL 中用于修改数据库表中的现有记录。你可以使用这个语句来更新表中的一个或多个列的值。
基本语法
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
table_name
:要更新的表名称。column1, column2, ...
:要更新的列名称。value1, value2, ...
:要设置的新值。WHERE condition
:指定哪些记录需要更新的条件。如果省略WHERE
子句,表中的所有记录都将被更新。
使用方法
- 更新特定记录:使用
WHERE
子句指定要更新的记录。 - 更新多个列:在
SET
子句中指定多个列和它们的新值。 - 使用表达式:在
SET
子句中使用表达式来计算新值。
代码示例
假设我们有一个名为 "Employees" 的表,包含了员工的信息:
+----+---------+--------+-----------+
| id | name | salary | department |
+----+---------+--------+-----------+
| 1 | Alice | 5000 | HR |
| 2 | Bob | 6000 | IT |
| 3 | Charlie | 5500 | IT |
| 4 | David | 7000 | Finance |
+----+---------+--------+-----------+
示例 1:更新特定记录
更新 ID 为 2 的员工的薪水为 6500:
UPDATE Employees
SET salary = 6500
WHERE id = 2;
示例 2:更新多个列
同时更新 ID 为 2 的员工的薪水和部门:
UPDATE Employees
SET salary = 6500, department = 'Operations'
WHERE id = 2;
示例 3:使用表达式
将 IT 部门的所有员工薪水增加 10%:
UPDATE Employees
SET salary = salary * 1.10
WHERE department = 'IT';
示例 4:更新多个记录
如果没有 WHERE
子句,所有记录都会更新。例如,将所有员工的部门更新为 'General':
UPDATE Employees
SET department = 'General';