MySQL 列数据跨表拷贝,一句SQL快速将表A每条记录的某些字段拷贝到表B每条记录的某些字段(A、B表通过ID对应)

文章目录

  • [MySQL 列数据跨表拷贝,一句SQL快速将表A每条记录的某些字段拷贝到表B每条记录的某些字段(A、B表通过ID对应)](#MySQL 列数据跨表拷贝,一句SQL快速将表A每条记录的某些字段拷贝到表B每条记录的某些字段(A、B表通过ID对应))

MySQL 列数据跨表拷贝,一句SQL快速将表A每条记录的某些字段拷贝到表B每条记录的某些字段(A、B表通过ID对应)

背景

新建了一张表B,需要从现有的A表的拷贝一部分字段过来,他们每行有个ID字段能一 一对应,做冗余数据。

定义表

sql 复制代码
create table t_a (
id int auto_increment primary key,
c1 int ,
c2 int 
)comment '测试表t_a';

create table t_b (
id int auto_increment primary key,
c1 int ,
c2 int 
)comment '测试表t_b';

填充测试数据

表A

表B

跨表一 一对应拷贝列数据SQL

set部分后面还可以加where 语句,例如 where t_b.id <1000等语句,可以加limit 语句,例如limit 10

sql 复制代码
UPDATE t_b
  INNER JOIN t_a ON t_b.id = t_a.id
  SET t_b.c1 = t_a.c1,
      t_b.c2 = t_a.c2 ;

更新完看表B

参考资料

官方update语句文档中写了update中可使用join https://dev.mysql.com/doc/refman/5.7/en/update.html

官方join文档 https://dev.mysql.com/doc/refman/5.7/en/join.html

相关推荐
爆更小哇29 分钟前
MyBatis的TypeHandler :优雅地实现数据加密与解密
数据库·后端·mybatis
likuolei1 小时前
Eclipse 创建 Java 接口
java·数据库·eclipse
w***15311 小时前
Spring boot启动原理及相关组件
数据库·spring boot·后端
q***65691 小时前
PostgreSQL 17 发布了!非常稳定的版本
数据库·postgresql
凌寒112 小时前
Linux(Debian)安装、卸载 MySQL
linux·运维·mysql·debian
云飞云共享云桌面2 小时前
如何降低非标自动化工厂的研发软件采购成本
运维·服务器·网络·数据库·性能优化·自动化
泰克教育官方账号2 小时前
泰涨知识 | 什么是自动化巡检?
运维·服务器·数据库
oneslide2 小时前
分享一个MySQL数据库备份恢复脚本--II
数据库·mysql
Gauss松鼠会2 小时前
【GaussDB】使用DBLINK连接到ORACLE
数据库·sql·database·gaussdb
Arva .3 小时前
深度分页、读写分离、分库分表后 SQL 该如何优化?
数据库·sql