Oracle中update更新多列
阿新 • • 發佈:2020-12-12
1、單列更新:
update 表名 set 列名=1 where 條件;
2、一次更新多列:
update student a set (a.id,a.name)=
(
select b.id,b.name from boy b where a.id=b.id and a.name!=b.name
)
where exists
(
select 1 from boy d where d.id=a.id and d.name!=a.name
);
一定要加上後面的exists語句,我這個更新兩列的時候報錯,顯示student.id是null,如下圖:
只更新student中的name是就會將其他的列更新為null
update student a set a.name=
(
select b.name from boy b where a.id=b.id and a.name!=b.name
);