SQL如何用表A更新表B
文章标题很短,因为问题的描述过于具体,标题就会显得过长。
这个问题更为准确地描述应该是这样:表结构雷同或者有相似字段的两张表A和B,如何用A表的字段数据去更新B表字段的数据?
操作方法:
1 update B 2 set B.clolumn_name = A.cloumn.name 3 from A,B 4 where A.ID = B.ID
实例验证。
俗话说,铁打的营盘流水的兵,政府也一样。政府内阁,会随着领导人的变更而发生变更。
分别创建两个表:cabinet和cabinet_new。
cabinet表的内容是在任美国政府内阁成员信息表。
cabinet_new表的内容是新总统的内阁成员信息表。
创建两个表并插入信息,语句如下:
1 create table cabinet 2 ( 3 post VARCHAR(12), 4 name VARCHAR(32) 5 ) 6 7 create table cabinet_new 8 ( 9 post_new VARCHAR(12), 10 name_new VARCHAR(32) 11 ) 12 13 INSERT INTO cabinet 14 VALUES ('总统','奥巴马') 15 INSERT INTO cabinet 16 VALUES ('国务卿','克里') 17 INSERT INTO cabinet 18 VALUES ('国防部长','盖茨') 19 INSERT INTO cabinet 20 VALUES ('财政部长','盖特纳') 21 INSERT INTO cabinet 22 VALUES ('司法部长','霍尔德') 23 INSERT INTO cabinet 24 VALUES ('商务部长','骆家辉') 25 INSERT INTO cabinet 26 VALUES ('能源部长','朱棣文') 27 28 INSERT INTO cabinet_new 29 VALUES('总统','特朗普') 30 INSERT INTO cabinet_new 31 VALUES('国务卿','蒂勒森') 32 INSERT INTO cabinet_new 33 VALUES('国防部长','马蒂斯') 34 INSERT INTO cabinet_new 35 VALUES('财政部长','努钦') 36 INSERT INTO cabinet_new 37 VALUES('司法部长','塞申斯') 38 INSERT INTO cabinet_new 39 VALUES('商务部长','罗斯') 40 41 select * from cabinet 42 select * from cabinet_new
执行结果:
随着奥巴马退职,新总统特朗普也即将上任,相应的,内阁成员也要更换。
对数据表来说,就是将cabinet表中的数据用cabinet_new更新。
根据上述操作方法,编写更新语句并做查询:
1 update cabinet 2 set cabinet.name = cabinet_new.name_new 3 from cabinet,cabinet_new 4 where cabinet.post = cabinet_new.post_new 5 6 select * from cabinet 7 select * from cabinet_new
执行结果:
有执行结果可以知道,更新成功,操作方法可行。
分类:
Database and SQL
标签:
Database and SQL
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY