如何在同一个数据库中将值从一行复制到另一行?

sz81bmfz  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(642)

我正在管理一个数据库,它有两个“经验”值表。我试图将第一个经验表中的值复制到第二个经验表中,但查询无法通过。这就是我现在所拥有的。
table:
-mob\u db\u re//目标表
-mob\u db//源表
查询语法:

UPDATE mob_db_re  
INNER JOIN mob_db ON mob_db.EXP = mob_db_re.EXP  
SET mob_db_re.EXP = mob_db.EXP
gdx19jrr

gdx19jrr1#

如果要将所有行从一个表复制到另一个表,请尝试使用 SELECT INTO 声明:

SELECT *
INTO mob_db_re
FROM mob_db;

如果表具有相同的模式,这将起作用,否则必须指定列。

huus2vyu

huus2vyu2#

使用此选项将一个表复制到另一个表
如果它们有相同的模式,请使用此模式 INSERT INTO mob_db_re (SELECT * FROM mob_db) 如果它们没有相同的模式,请使用此模式

INSERT INTO mob_db_re (column1, column2, column3, ...)
SELECT column1, column2, column3, ... FROM mob_db

如果需要,还可以将where条件添加到上面的select语句中。
出于某种原因,如果您需要更新而不是插入,请使用这个

UPDATE mob_db_re 
SET re.EXP= db.EXP
FROM mob_db_re re
INNER JOIN mob_db db
ON re.EXP= db.EXP;

相关问题