Oracle更新(update)

发布时间 2023-09-26 00:39:49作者: eyesfree

原文地址:https://blog.csdn.net/qq_24304893/article/details/124626306

一:update命令结构:

update 表名 set 列名1=值1,列名2=值2,列名3=值3..... where 条件
案例1、更新学生“张三”的年龄和身份证信息:

update student.stuinfo t
set t.age = '24', t.idnumber = '3503021994XXXXXXXX'
where t.stuname = '张三';
commit;
二:update 利用另外一张表关联更新本表数据的命令结构如下:

update 表1 set 列名=(select 列名 from 表2 where 表1.列名=表2.列名)
where exists (select 1 from 表2 where 表1.列名=表2.列名)
案例2、利用备份表stuinfo_2018更新回学生“张三”的年龄和身份证:

update student.stuinfo t
set (age, idnumber) =
(select age, idnumber from student.stuinfo_2018 b where b.stuid = t.stuid)
where exists (select 1
from student.stuinfo_2018 b
where b.stuid = t.stuid
and b.stuname = '张三');

 

scott中表测试:

UPDATE emp_new t
SET
( comm,
sal ) = (
SELECT
comm,
sal
FROM
emp_backup t1
WHERE
t1.empno = t.empno
)
WHERE
EXISTS (
SELECT
1
FROM
emp_backup t2
WHERE
t2.empno = t.empno
AND t2.job = 'MANAGER'
)

————————————————
版权声明:本文为CSDN博主「qq_24304893」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_24304893/article/details/124626306