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

相关推荐
n***s9091 小时前
【MySQL基础篇】概述及SQL指令:DDL及DML
sql·mysql·oracle
爬山算法1 小时前
Redis(158)Redis的主从同步问题如何解决?
数据库·redis·缓存
jnrjian4 小时前
FRA中 keep的backup set 不保险
sql·oracle
2501_941148154 小时前
多语言微服务架构与边缘计算技术实践:Python、Java、C++、Go深度解析
数据库
计算机毕设小月哥5 小时前
【Hadoop+Spark+python毕设】智能制造生产效能分析与可视化系统、计算机毕业设计、包括数据爬取、Spark、数据分析、数据可视化、Hadoop
后端·python·mysql
w***z505 小时前
MYSQL 创建索引
数据库·mysql
j***51895 小时前
Java进阶,时间与日期,包装类,正则表达式
java·mysql·正则表达式
章鱼哥7305 小时前
[特殊字符] SpringBoot 自定义系统健康检测:数据库、Redis、表统计、更新时长、系统性能全链路监控
java·数据库·redis
5***E6856 小时前
MySQL:drop、delete与truncate区别
数据库·mysql
记得记得就1516 小时前
【MySQL数据库管理】
数据库·mysql·oracle