首页 > 数据库 > MySQL > 正文

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

2024-07-24 12:53:07
字体:
来源:转载
供稿:网友

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

表t1:

表t2:

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'

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

以上就是小编为大家带来的MySQL查询结果复制到新表的方法(更新、插入)全部内容了,希望大家多多支持错新站长站~

您可能感兴趣的文章:

mysql 批量更新与批量更新多条记录的不同值实现方法MySQL UPDATE更新语句精解MySql中使用INSERT INTO语句更新多条数据的例子mysql 记录不存在时插入 记录存在则更新的实现方法mysql 存在该记录则更新,不存在则插入记录的sqlmysql用一个表更新另一个表的方法MySQL使用外键实现级联删除与更新的方法mysql 一次更新(update)多条记录的思路MySQL数据库SQL更新锁定示例代码
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表