mysql依据一个表的数据下载另一个表数据的SQL书写-mysql实例教程

首页 2024-06-26 11:20:00

sql 中更新表数据库的通用性方法包括:应用 join 句子,配对两个表并更新总体目标表中特定列;应用子查询,获得源表中配对行值并更新目标表;应用 merge 句子(mysql 8.0 及更多版本号),合拼两个表并按照标准升级或插入数据。

依据一个表的数据下载另一个表数据的 SQL 书写

方法一:应用 JOIN 句子

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:包括具备 id 和 name 列数据信息
  • table2:包括具备 id 和 description 列数据信息

需要使用 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中文网站其他类似文章!

nat123映射怎么用?超详细步骤,外网访问内网轻松搞定
nat123域名怎么用?两种方式轻松搞定
nat123怎么用?简单几步实现内网穿透
内网穿透工具对比:nat123、花生壳与轻量新选择
远程访问内网很简单:用对工具,一“箭”穿透
ngrok下载完全指南:从入门到获取客户端
内网远程桌面软件:穿透局域网边界的数字窗口
从外网远程访问内网服务器的完整方案
Windows Server 2008端口转发完全教程:netsh命令添加/查看/删除/重置
为什么三层交换机转发比Linux服务器快?转发表硬件加速的秘密