1. 插入

一般插入:

  1. "1:不带列名"
  2. INSERT INTO Student
  3. VALUES ('95020''陈冬''男''IS'18)
  4. "2:带列名"
  5. INSERT INTO SC(SnoCno)
  6. VALUES (' 95020 '' 1 ');

带子查询结果:

  • 语句格式

INSERT

INTO <表名> [(<属性列1> [,<属性列2>… )]

子查询;

  • 功能

将子查询结果插入指定表中

INSERT
INTO  Deptage(Sdept,Avgage)
      SELECT  Sdept,AVG(Sage)
      FROM  Student
      GROUP BY Sdept;

2. 修改

  • 修改某一个元组的值
  • 修改多个元组的值
  • 带子查询的修改语句
"修改单条数据"
UPDATE  Student
SET Sage=22
WHERE  Sno=' 95001 ';

"2:批量修改"
UPDATE Student
SET Sage= Sage+1

例:将计算机科学系全体学生的成绩置零

"3: 带子查询修改"
UPDATE SC
SET  Grade=0
WHERE  'CS'=
     (SELECT Sdept
   FROM  Student
   WHERE  Student.Sno = SC.Sno);

3. 删除

  • 删除某一个元组的值
  • 删除多个元组的值
  • 带子查询的删除语句
"1"
DELETE FROM SC
WHERE Cno='2';

"2"
DELETE FROM SC;

"3: 删除信息系所有学生的选课记录"
DELETE FROM SC
WHERE  'IS'=
(SELETE Sdept
  FROM Student
  WHERE Student.Sno=SC.Sno);

4. 从旧表创建新表

  • select into 表1 from 表2 where
  • insert into 表1 select from 表2 where ```sql //1.直接创建(新表会自己创建) select cid,COUNT(*) as num, MAX(score) as maxscore into InfoCS from CHOICES group by cid;

//2.先创建表,再(用已有的表中数据)插入 create table InfoCS( cid char(10), num int, maxscore int ) insert into InfoCS(cid,num,maxscore) select cid,COUNT(*), MAX(score) from CHOICES group by cid; ```