(一)基本表的更新
(1)插入数据:
- 插入元组,插入子查询结果
- values语句
insert into SC values('20225','1',null);
- 插入子查询结果:
insert into Dep_age(Sdept,Ave_age)
select Sdep,avg(Sage) from Student group by Sdep;
(2)修改数据
- 1.修改某个元组的值:
update Student set Sage=22
where Sno='20220';
- 将所有年龄增加1:
update Student set Sage=Sage+1;
- 将计算机专业学生成绩清零
update SC set Grade=0
where 'CS'=(
select Sdept
from Student where Student.Sno=SC.Sno
)
(3)删除数据
- 1.删除某个元组的值:
delete from Student where Sno='202220';
(二)视图
- 简化用户的操作
- 视图的特点:虚表,知存放于视图的定义,随着表中的数据变化而变化
- 建立视图
create view IS_Student as
select Sno,Sname from Student where Sdept='IS';
- 基于视图的视图
create view IS_ S2 as select Sno,Sname,Grade
from ID_S1 where Grade>=90;
- 分组视图
create view S_G(Snop,Gave) as select Sno,avg(Grade) from SC group by Sno;
- 删除视图
drop view IS_S1;
- 查询视图
SELECT Sno,AVG(Grade)
FROM SC
GROUP BY Sno
HAVING AVG(Grade)>=90;
- 更新视图
UPDATE IS_Student
SET Sname= '刘辰'
WHERE Sno= '201215125';
- 删除视图
delete from IS_Student where Sno='20222';
参考:https://blog.youkuaiyun.com/weixin_43914604/article/details/105243896