在mysql中,如何从给定的一组值为表中的每一行设置一列

在mysql中,如何从给定的一组值为表中的每一行设置一列,mysql,sql,sql-update,rows,Mysql,Sql,Sql Update,Rows,我有这张桌子: id name code --------------------------- 1 n1 2 n2 3 n3 我需要将这些值写入每行的代码列: ('8n8kKaVu','SRE2vbpQ','Vdfb7V7s') 此外,将上表中的值设置为哪一行并不重要。让我们假设我希望最终的表如下所示: id name code ----------------------- 1 n1 8

我有这张桌子:

id      name     code
---------------------------
1        n1  
2        n2
3        n3
我需要将这些值写入每行的代码列:

('8n8kKaVu','SRE2vbpQ','Vdfb7V7s')
此外,将上表中的值设置为哪一行并不重要。让我们假设我希望最终的表如下所示:

id     name     code
-----------------------
1      n1       8n8kKaVu
2      n2       SRE2vbpQ
3      n3       Vdfb7V7s

如果将所有代码加载到表中,则可以创建自动递增键:

alter table codes add id integer auto_increment key;
然后使用“代码”表中的值更新原始表中的“代码”列:

UPDATE original_table
SET code = (SELECT
                codes.code
            FROM codes
            WHERE original_table.id = codes.id);
可能重复的