2.4含有子查询的数据更新.ppt
文本预览下载声明
2.4 含有子查询的数据更新 ; 2.4.1 INSERT与子查询的集合
一、语句格式
INSERTINTO表名[属性名清单]
(子查询);
把子查询的结果插入指定的表名中。这样的一条INSERT语句,可以一次插入多条元组。
; 二、举例
例2.22 假如部门号为‘01’的部门由于需要自己建立一个部门职工表,结构与Employee相同(表名为Employee-01)。则该表的元组可用一条INSERT语句一次全部插入如下:
INSERT INTO Employee-01
SELECT*
FROM Employee
WHER EDno=′01′;
; 2.4.2 UPDATE与子查询的结合
一、语句格式
UPDATE表名
SET列名=表达式[,列名=表达式]n
[WHERE带有子查询的条件表达式]
本语句执行时,将修改使带有子查询的条件表达式为真的所有元组。n的意义与2.2.4节中的n相同。
; 二、举例
例2.23 UPDATE Salary
SET Rest=Rest+200
WHERE Eno IN
(SELECT Eno
FROM Item-Emp
WHEREIno=′199802′);
凡参加199802项目的职工,工资表中津贴的值都增加200。 ; 2.4.3 DELETE与子查询的结合
一、语句格式
DELETE
FROM表名
[WHERE带有子查询的条件表达式]
本语句将删除使带有子查询的条件表达式为真的所有元组。
;二、举例
例2.24 DELETE
FROM Item-Emp
WHERE Eno=
(SELECT Eno
FROM Employee
WHERE姓名=′丁为国′);
从项目人员中,删除丁为国的所有元组。
显示全部