我有这张桌子:
如果new_parentID
new_campaignID
字段更新old_campaignID = old_parentID
这是一个例子
col A | col B | col C | col D | col E | col F |
1 | 1 | 4 | a | 7 | NULL |
2 | 2 | 5 | b | 2 | NULL |
3 | 3 | 6 | c | 8 | NULL |
因此,如果col b = col E我想在col e的同一行填充col f
结果
col A | col B | col C | col D | col E | col F |
2 | 2 | 5 | b | 2 | 5 |
我试过了:
update test1
set new_campaignID = new_parentID
where old_campaignID = old_ParentID;
但它无效
答案 0 :(得分:0)
您需要join
。我认为你想要的查询是:
update test1 t1 join
test1 tt1
on t.old_campaignId = tt1.old_parentId
set t1.new_campaignID = tt1.new_parentID ;
答案 1 :(得分:0)
以下是
的简单代码CREATE TABLE T1
(
colA CHAR(1),
colB CHAR(1),
colC CHAR(1),
colD CHAR(1),
colE CHAR(1),
colF CHAR(1)
);
/*col A | col B | col C | col D | col E | col F |
1 | 1 | 4 | a | 7 | NULL |
2 | 2 | 5 | b | 2 | NULL |
3 | 3 | 6 | c | 8 | NULL |*/
INSERT INTO T1 VALUES
('1','1','4','a','7',null),
('2','2','5','b','2',null),
('3','3','6','c','8',null);
您可以使用SET
填充列
UPDATE T1
SET colF = colE
WHERE colB = colE;