实验二 单表查询

【SY2-12】 查询既不是计算机系,也不是数学系的学生的信息。

select *

from Student

where Dno not in('DX01','LX01');

【SY2-13】查询所有姓“欧”的学生的姓名(Sname)、学号(Sno)和性别(Ssex)。

为什么不能用欧_:_代表单个字符,%代表任意字符

select Sname,Sno,Ssex

from Student

where Sname like '欧%';

【SY2-14】查询姓“欧”且全名为3个汉字的学生的信息。

select Sname,Sno,Ssex

from Student

where Sname like '欧__';

SY2-15】 查询所有不姓“欧”的学生姓名(Sname)和年龄(Sage)。

select Sname,Sage

from Student

where Sname not like '欧%';

【SY2-16】查询课程名为“DB_Design”的课程号信息。

select *

from Course

where Cname = 'DB_Design';

【SY2-17】查询以"DB_"开头,且倒数第3个字符为“i”的课程的详细情况。

select *

from Course

where Cname like 'DB\_%i__'escape'\';

【SY2-18】 假设某些学生选修课程后没有参加考试,所以有选课记录,但没有考试成绩。查询缺少成绩的学生的学号(Sno)和相应的课程号(Cno)。

select Sno,Cno

from SC

where Grade is null;

【SY2-19】查询所有有成绩的学生学号(Sno)和课程号(Cno)。

select Sno,Cno

from SC

where Grade is NOT null;

SY2-20】查询计算机系年龄在27岁以下的学生姓名。

select Sname

from Student

where Dno='DX01'and Sage<='27';

3 查询结果排序

【SY2-21】查询选修了1号课程的学生的学号(Sno)和成绩(Grade),并按成绩降序排列。

select Sno,Grade

from SC

where Cno=1

order by Grade DESC;

【SY2-22】查询全体学生情况,查询结果按所在系的系代号(Dno)升序排列,同一系中的学生按年龄(Sage)降序排列。

先对系号进行排序后,在排年龄

select *

from Student

order by Dno ASC,Sage DESC;

4 集函数的使用

【SY2-23】查询学生总人数。

select count(distinct Sname)

from Student;

【SY2-24】查询选修了课程的学生人数。

在SC表里就是选修了课程的学生号

select count(distinct sno)

from SC

【SY2-25】计算选修1号课程的学生平均成绩。

select avg(Grade)

from SC

WHERE Cno=1;

【例2-26】查询选修2号课程的学生最高分数

select max(Grade)

from SC

WHERE Cno=2;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值