SQL数据更新

数据更新

注意的问题
修改数据upadte与修改基本表alter
删除数据delete与删除基本表drop

插入数据

  • into子句:指定要插入数据的表名以及属性列名
  • values子句:提供的值必须与into子句匹配(包括个数和类型)
  • 插入单个元组
    没有指定任何属性列:插入的是一条完整的元组,需要与表中属性列数据顺序一致
insert
into s
values ('04050','张三', '男', '1997/10/01','信息');

全部指定属性列名:属性列顺序可自定

insert
into s(sno,college,sname,ssex,sbirth)
values ('04050','信息', '张三', '男','1997/10/01');

指定部分属性列:插入的元组在其余属性列上取空值

insert
into s(sno,college,sname)
values ('04050','信息', '张三');
  • 插入子查询结果
insert
into college_avg_age(college,avgage)
select college,avg(2021-year(sbirth)) 
from s
group by college;

修改数据

  • 单表修改数据
update sc
set grade=100 
where college='信息');
  • 连表修改数据
update sc
set grade=100 
where sno in
    (select sno
     from s
     where college='信息');

删除数据

  • 单表删除数据
delete
from s
where sno=‘04009’;
  • 连表删除数据
delete 
from sc
where sno in
(select sno
from s
where college=‘ ’);
上一篇:MySQL的DQL


下一篇:隐藏了2年的Bug,终于连根拔起,悲观锁并没有那么简单