在 SQL Server 中,可以使用 UPDATE 语句和 JOIN 子句来实现联表更新。以下是一个示例:
假设有两个表,一个是 employees
表,另一个是 departments
表。我们需要根据部门编号(dept_id)将员工的部门名称(dept_name)更新到 employees
表中。这两个表的结构如下:
employees 表
emp_id | emp_name | dept_id | dept_name |
---|---|---|---|
1 | Alice | 101 | |
2 | Bob | 102 | |
3 | Carol | 103 |
departments 表
dept_id | dept_name |
---|---|
101 | HR |
102 | IT |
103 | Finance |
可以使用以下 SQL 语句实现联表更新:
UPDATE e SET e.dept_name = d.dept_name FROM employees e JOIN departments d ON e.dept_id = d.dept_id;
执行此语句后,employees
表将被更新为:
emp_id | emp_name | dept_id | dept_name |
---|---|---|---|
1 | Alice | 101 | HR |
2 | Bob | 102 | IT |
3 | Carol | 103 | Finance |
这里,我们使用了表别名 e
和 d
分别代表 employees
和 departments
表。通过 JOIN 子句将这两个表连接在一起,然后使用 UPDATE 语句更新 employees
表中的 dept_name
字段。