位置: 编程技术 - 正文

MySQL查询结果复制到新表的方法(更新、插入)(mysql 复合查询)

编辑:rootadmin

推荐整理分享MySQL查询结果复制到新表的方法(更新、插入)(mysql 复合查询),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql查询结果赋值,mysql查询结果赋值,mysql复合查询语句,mysql的复杂查询,mysql复合查询语句,mysql查询结果再查询,mysql查询结果赋值,mysql复合查询语句,内容如对您有帮助,希望把文章链接给更多的朋友!

MySQL中可以将查询结果复制到另外的一张表中,复制的话通常有两种情况,一种是更新已有的数据,另一种是插入一条新记录。下面通过例子来说明。首先构建两个测试表。

表t1:

表t2:

MySQL查询结果复制到新表的方法(更新、插入)(mysql 复合查询)

1、如果t2表中存在score值,将score更新到t1表中。方法如下:

UPDATE t1,t2 SET t1.score = t2.score WHERE t1.id = t2.id AND t2.score IS NOT NULL

这就是将查询结果作为条件更新另一张表,当然,t2也可以是更为复杂的一个查询结果而不是一个具体的表。

2、将t1表的username更新至t2表,将t2表的score更新至t1表。方法如下:

UPDATE t1,t2 SET t1.score = t2.score,t2.username = t1.username WHERE t1.id = t2.id

这个方法其实跟上面的方法类似,可以同时更新两个表的数据,即做表部分数据的互相复制、更新。

3、将t2表的查询结果插入到t1表中。方法如下:

INSERT INTO t1(id,username,score)SELECT t2.id,t2.username,t2.score FROM t2 where t2.username = 'lucy'

前面两种方式是更新表的记录,这种方式是插入一条新的记录。其实,从脚本可以看出,这个方法就是将查询和插入两个步骤合二为一。

本文链接地址:https://www.jiuchutong.com/biancheng/349620.html 转载请保留说明!

上一篇:MySQL利用procedure analyse()函数优化表结构(MySQL利用命令行工具启动和关闭的命令是什么)

下一篇:SQL查询语句优化的实用方法总结(sql 查询优化)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络