数据库SQL语句使用(一)

 

  数据库sql语句系列都是以下面的表为基础的

 

 

 

 

1.       写出步骤4中的各项操作的SQL语句。

① 给学生表增加一属性Nation(民族),数据类型为Varchar20);

alter table Student add Nation varchar(20);

 

② 删除学生表中新增的属性Nation

alter table Student DROP COLUMN Nation ;

 

③ 向成绩表中插入记录(”2001110””3”80);

insert into Grade (Sno,Cno,Gmark)values ('2001110','3',80);

 

④ 修改学号为”2001110”的学生的成绩为70分;

update Grade set Gmark=70 where Sno='2001110';

 

⑤ 删除学号为”2001110”的学生的成绩记录;

delete from Grade where Sno='2001110';

 

⑥ 为学生表创建一个名为IX_Class的索引。

create index IX_Class on Student(Sno);

 

Select语句使用(一) 

完成以下各项操作的SQL语句:

     找出所有被学生选修了的课程号;

select distinct Cno from Grade;

 

     找出01311班女学生的个人信息;

select * from Student where Clno='01311' and Ssex='';

 

     找出01311班、01312班的学生姓名、性别、出生日期;

select Sname, Ssex,2009-Sage Birthday from Student where Clno='01311' or Clno='01312';

 

     找出所有姓李的学生的个人信息;

select * from Student where Sname like '%';

 

     找出学生李勇所在班级的学生人数;

select Number from Class where Clno=(select Clno from Student where Sname='李勇');

 

     找出课程名为操作系统的平均成绩、最高分、最低分;

select avg(Gmark)/ max(Gmark)/ min(Gmark) from Grade where Cno=(select Cno from Course where Cname='操作系统' );

 

     找出选修了课程的学生人数;

select count(distinct Sno) from Grade ;

 

⑧ 找出选修了课程操作系统的学生人数。

select count(distinct Sno) from Grade where Cno=(select Cno from Course where Cname='操作系统' );

select 语句使用(二)

 

 

 

 

1、完成以下各项操作的SQL语句:

找出与李勇在同一个班级的学生信息;

select * from Student where Clno=

(select Clno from Student where Sname='李勇');

 

② 找出选修了课程操作系统的学生学号和姓名;

Select Sname, Sno from Student where Sno in

(select Sno from Grade where Cno =

(select Cno from Course where Cname='操作系统'));

 

③ 找出年龄介于学生李勇和25岁之间的学生信息;(已知李勇年龄小于25岁)

Select * from student where Sage<25 and Sage>

(select Sage from student where Sname='李勇');

 

④ 找出所有没有选修1号课程的学生姓名

Select Sname from student where NOT EXISTS

(select * from Grade where student.Sno=Sno and Cno='1');

 

⑤ 查询选修了3号课程的学生学号及其成绩,并按成绩的降序排列;

Select Sno,Gmark from Grade where Cno='3'order by Gmark desc;

 

⑥ 求每个课程号及相应的选课人数;

select Cno '课程号' ,count(*)as '选课人数'from grade group by cno;

 

查询选修了3门以上课程的学生学号。

select Sno from Grade Group By Sno having count(*)>3;

 

 

 

 

未完待续……

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值