mysql 不同库不同表字段数据复制
需求:把一个表某个字段内容复制到另一张表的某个字段。
实现sql语句1:
1 2 3 4 5 | UPDATE file_manager_folder f1 LEFT OUTER JOIN file_manager_folder f2 ON f1.name = f2.name AND f2.parentId = 54 SET f1.parentId = 54 WHERE f2.name IS NULL AND f1.id IN (1,2,3); |
实现sql语句2:
1 | update B set extra = A.extra from A join B on (A.id = B.id); |
我试了好像报错
实现sql语句3:
1 | update b set b.sms = (select a.sms from a where a.id = b.id) |
需要确定两张表中的id都是主键或者唯一
实现sql语句4:
1 | UPDATE A SET A.SMS = (SELECT B.SMS FROM B WHERE A.ID = B.ID) WHERE EXISTS (SELECT 1 FROM B WHERE A.ID = B.ID); |
实现sql语句5:
复制一个表字段数据到另外一个表的字段,可以这么写:
实现sql语句5:
1 2 | UPDATE tb_1 INNER JOIN tb_2 ON tb_1.tid = tb_2.tid SET tb_1.tcontent = tb_2.tcontent |
附:同表复制
需求:把同一张表的一个字段内的内容复制到另一个字段里
例1:
我想把article表中A字段的内容复制到article表中B字段里面sql语句为:
1 | update article set B=A; |
例2:
有时候,我们需要复制某个字段一整列的数据到另外一个新的字段中,这很简单,SQL可以这么写:
1 | UPDATE tb_1 SET content_target = content_source; |
大概写法如下:
1 | Update {your_table} set {source_field} = {object_field} WHERE cause |
最后,我用的是
1 2 3 | UPDATE k1.tb1 kt1 INNER JOIN k2.tb2 kt2 ON kt1.id = kt2.id SET kt1.sex = kt2.sex |
数据库k1的tb1表同步数据库k2的tb2表对应id的sex
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!