📅  最后修改于: 2023-12-03 15:06:58.999000             🧑  作者: Mango
在数据库中,我们经常需要更新一张表的数据,而连接更新是一种效率较高的更新方式,它使用连接表格的方式将另一个表格的数据更新到原有表格中。
连接更新的语法格式如下所示:
UPDATE table1
INNER JOIN table2
ON table1.column = table2.column
SET table1.column = table2.column;
其中,table1
和 table2
代表需要连接的两张表格,column
代表两张表格需要连接的列,SET
关键字用于指定需要更新的列和更新后的值。
假设我们有两张表格,一张是 employee
表格,另一张是 salary
表格,它们包含以下数据:
employee
表格:
| emp_id | emp_name | emp_age | | ------ | -------- | --------- | | 1 | Alice | 32 | | 2 | Bob | 28 | | 3 | Charlie | 45 |
salary
表格:
| emp_id | salary | | ------ | -------- | | 1 | 55000 | | 2 | 45000 | | 3 | 65000 |
我们需要将 salary
表格的 salary
列更新到 employee
表格中,可以使用如下 SQL 语句:
UPDATE employee
INNER JOIN salary
ON employee.emp_id = salary.emp_id
SET employee.emp_salary = salary.salary;
执行该语句后,employee
表格将会被更新为:
| emp_id | emp_name | emp_age | emp_salary | | ------ | -------- | --------- | ---------- | | 1 | Alice | 32 | 55000 | | 2 | Bob | 28 | 45000 | | 3 | Charlie | 45 | 65000 |
JOIN
关键字,否则无法正确连接两张表格;