一尘不染

使用条件将行从一个表迁移到另一个表[MYSQL]

sql

我有2个MYSQL表格:

TABLE 1:

PRODUCTID | BRAND | BASECOLOR | COLORNAME

Table 2:

PRODUCTID | BRAND | COLORNAME

在表1中,字段“ COLORNAME”为空,并且两个表中的字段“ PRODUCTID”和“ BRAND”必须匹配。我需要将“
COLORNAME”行从表2移动到表1。我已经完成了以下SQL请求:

INSERT INTO tablel (COLORNAME) SELECT COLORNAME FROM table2 WHERE table1.PRODUCTID = table2.PRODUCTID AND table1.BRAND  = table2.BRAND

我得到了这个答案:

“ where子句”中的未知列“ table1.PRODUCTID”

我是SQL的新手,所以我有点迷失了,我要感谢一些帮助。


阅读 208

收藏
2021-05-30

共1个答案

一尘不染

试试这个:

update table1 tab1, table2 tab2 set tab1.colorname=tab2.colorname where tab2.brand=tab1.brand;
2021-05-30