SQL 中更新表数据的通用方法包括:使用 JOIN 语句,匹配两个表并更新目标表的指定列;使用子查询,获取源表中匹配行的值并更新目标表;使用 MERGE 语句(MySQL 8.0 及更高版本),合并两个表并按条件更新或插入数据。

根据一个表的数据更新另一个表数据的 SQL 写法
最近大家都在看
方法一:使用 JOIN 语句
一个经过完善设计有着及其强大的会员互动和独特创新的内容管理系统。主要功能模块包括:文章频道、图片频道、下载频道、动漫频道、音乐频道、影视频道、商城频道、供求频道、采集管理 、专题频道等等。系统通用模块:用户管理、博客日志管理、相册管理、音乐盒管理、朋友圈管理、广告管理、公告管理、模板管理、网站信息配置、高级自定义SQL扩展标签,RSS在线订阅功能、网站统计、邮件列表、邮件群发、数据库管理、站内短消
0
UPDATE table2 SET column2 = table1.column1 JOIN table1 ON table2.id = table1.id;
方法二:使用子查询
UPDATE table2
SET column2 = (
SELECT column1
FROM table1
WHERE table2.id = table1.id
);方法三:使用 MERGE 语句(MySQL 8.0 及更高版本)
MERGE INTO table2 AS t2 USING table1 AS t1 ON t2.id = t1.id WHEN MATCHED THEN UPDATE SET column2 = t1.column1;
示例
假设有以下两个表:
要使用 table1 中的 name 更新 table2 中的 description,可以使用以下 SQL 查询:
-- 使用 JOIN 语句
UPDATE table2 SET description = table1.name
JOIN table1 ON table2.id = table1.id;
-- 使用子查询
UPDATE table2
SET description = (
SELECT name
FROM table1
WHERE table2.id = table1.id
);
-- 使用 MERGE 语句(MySQL 8.0 及更高版本)
MERGE INTO table2 AS t2
USING table1 AS t1
ON t2.id = t1.id
WHEN MATCHED THEN
UPDATE SET description = t1.name;以上就是mysql根据一个表的数据更新另一个表数据的SQL写法的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号