MySQL UPDATE 语句说明

功能:用于修改表中已存在的记录。

语法

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
  • table_name:要更新的表名。

  • SET:指定要更新的列及其新值。

  • WHERE:指定更新条件。如果不使用 WHERE,表中的所有记录都会被更新。

案例

表结构

CREATE TABLE employees (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    salary DECIMAL(10, 2),
    department VARCHAR(50)
);

初始数据

INSERT INTO employees (id, name, salary, department) VALUES
(1, 'Alice', 5000.00, 'HR'),
(2, 'Bob', 6000.00, 'IT'),
(3, 'Charlie', 7000.00, 'IT');

案例1:更新单个记录

UPDATE employees
SET salary = 6500.00
WHERE id = 2;

结果Bob 的工资从 6000.00 更新为 6500.00

案例2:更新多个列

UPDATE employees
SET salary = 7500.00, department = 'Finance'
WHERE id = 3;

结果Charlie 的工资更新为 7500.00,部门更新为 Finance

案例3:更新所有记录

UPDATE employees
SET salary = salary + 1000.00;

结果:所有员工的工资增加 1000.00

案例4:使用子查询更新

UPDATE employees
SET salary = (SELECT AVG(salary) FROM employees)
WHERE department = 'IT';

结果IT 部门的员工工资更新为所有员工的平均工资。

注意事项

  1. 使用 WHERE 条件时,确保条件准确,避免误更新。

  2. 更新前建议备份数据,防止数据丢失。

  3. 更新大量数据时,注意性能影响。

本篇文章内容来源于:MySQL UPDATE 更新详细说明以及案例