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

相关推荐
好奇的菜鸟2 小时前
如何在IntelliJ IDEA中设置数据库连接全局共享
java·数据库·intellij-idea
tan180°2 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
满昕欢喜3 小时前
SQL Server从入门到项目实践(超值版)读书笔记 20
数据库·sql·sqlserver
DuelCode3 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
幽络源小助理4 小时前
SpringBoot基于Mysql的商业辅助决策系统设计与实现
java·vue.js·spring boot·后端·mysql·spring
Hello.Reader4 小时前
Redis 延迟排查与优化全攻略
数据库·redis·缓存
简佐义的博客5 小时前
破解非模式物种GO/KEGG注释难题
开发语言·数据库·后端·oracle·golang
爬山算法5 小时前
MySQL(116)如何监控负载均衡状态?
数据库·mysql·负载均衡
JAVA学习通6 小时前
Mybatis--动态SQL
sql·tomcat·mybatis
老纪的技术唠嗑局7 小时前
OceanBase PoC 经验总结(二)—— AP 业务
数据库