版本:7.0.0

UPDATE ​

功能描述 ​

UPDATE 语句用于修改数据库表中已存在的行数据。

注意事项 ​

省略 WHERE 子句会更新表中所有行,请谨慎操作;建议先通过 SELECT 语句确认待更新范围,并在事务中执行以便必要时回滚。

语法格式 ​

sql
UPDATE [schema.]table_name SET column1 = value1, column2 = value2, ... [WHERE condition];

参数说明 ​

参数说明
UPDATE关键字,指示要执行更新操作。
[schema.]table_name要更新数据的目标表的名称。
SET column1 = value1, column2 = value2, ...指定要更新的列及其新值。指定更新的新值可以是常量(包括DEFAULT)、表达式、函数调用等。
[WHERE condition](可选)指定更新哪些行的条件。如果省略,将更新表中的所有行。

示例1: 更新符合条件的行

UPDATE employees SET salary = salary * 1.1 WHERE department_id = 10;
UPDATE employees SET salary = DEFAULT WHERE department_id = 10;

示例2: 更新所有行 (谨慎使用)

UPDATE employees SET name = 'Marketing';

示例 ​

sql
-- 根据条件更新单列
UPDATE employees SET salary = 90000 WHERE id = 101;

-- 同时更新多列
UPDATE employees SET salary = salary * 1.05, hire_date = SYSDATE WHERE department_id = 20;

-- 使用子查询更新
UPDATE employees SET salary = (SELECT AVG(salary) FROM employees) WHERE department_id = 30;