1. 程式人生 > 其它 >Oracle中update更新多列

Oracle中update更新多列

技術標籤:sqlOracleoracle

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
	);

在這裡插入圖片描述
在這裡插入圖片描述