查询操作练习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

查询命令格式:

SELECT 列名表或表达式 FROM 数据源[WHERE 条件]

[GROUP BY 分组表达式]

[HAVING 分组条件]

[ODERD BY 排序表达式 ASC/DESC]

在查询分析器中使用SQL语言对下列各题进行操作:已知数据库S中含有3张表:

STUDENT(SNO,SNAME,SSEX,SAGE, SDEPT)

COURSE(CNO,CNAME,HOURS)

SC(SNO,CNO,GRADE)

1.分别查询学生表和学生修课表中的全部数据。

select * from student;

select * from sc

2.查询成绩在70到80分之间的学生的学号、课程号和成绩。select * from sc

where grade between 70and 80 ;

3.查询C01号课程成绩最高的分数

select max(grade)from sc where cno='c01'

4.查询学生都选修了哪些课程,要求列出课程号。

select distinct cno from sc 5.查询Northwind数据库中orders表的OrderID、CustomerID和OrderDate,并将最

新的定购日期(OrderDate)列在前边。

select OrderID,CustomerID ,orderdate from orders 6.查询Northwind数据库中orders表的ShipCountry列以B,C,D,F开始且第三个字符为"a"的OrderID、CustomerID和ShipCountry的信息。

select OrderID,CustomerID ,ShipCountry from orders where ShipCountry like '[BCDF]_a%'

7.查询Northwind数据库中orders表的ShipCountry列不以A,B,C,D,E,F开始且最后一个字母是"a"的OrderID、CustomerID和ShipCountry的信息。

select OrderID,CustomerID ,ShipCountry from orders where ShipCountry like '[^ABCDF]%a'

8.查询修了c02号课程的所有学生的平均成绩、最高成绩和最低成绩。

select 最高分数= max(grade),最低分数=min(grade),平均分数=avg(grade) from sc where cno='c02'

9.统计每个系的学生人数。

select sdept, count(sdept) as '人数' from student group by sdept

10.统计每门课程的修课人数和考试最高分。

select sdept, count(sdept) as '人数' from student group by sdept

11.统计每个学生的选课门数,并按选课门数的递增顺序显

示结果。

12.统计修课的学生总数和考试的平均成绩。

select count(o) as '修课总人数',平均分数

=avg(grade) from sc,course where o=o and o is not null

13.查询选课门数超过2门的学生的平均成绩和选课门数。select o,count(o)'修课人数',平均分

数=avg(grade) from sc,course where o=o and o>='2' group by o

14.列出总成绩超过200分的学生,要求列出学号、总成绩。select sno,sum(grade) as '总成绩' from sc where s group by sno having sum(grade)>='200'

15.查询pubs数据库的titles表中每类图书的平均价格超

过12.0元的书的类型(Type)、平均价格和最高价格。

select type,avg(price),max(price) from titles group by type having avg(price)>12.0

16.查询pubs数据库的titles表中每类图书中图书的数目

超过3本的图书的总价格。

select 读书数目=count(type),总价格=sum(price) from titles group by type having count(type)>3

17.查询选修了c02号课程的学生的姓名和所在系。

select cno,sname,sdept from student,course where cno='c02'

18.查询成绩80分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果。

select sname,cno,grade from student,sc where grade>80 19.查询计算机系男生修了"数据库基础"的学生的姓名、性别、成绩。

select sname,ssex,grade from student,sc ,course where sdept='计算机系'and ssex='男'and cname='数据库基础' and

student.sno=sc.sno and o=o

20.查询哪些学生的年龄相同,要求列出年龄相同的学生的姓名和年龄。

21.查询哪些课程没有人选,要求列出课程号和课程名。

22.查询有考试成绩的所有学生的姓名、修课名称及考试成绩,要求将查询结果放在一张新的永久表(假设新表名为new-sc)中。

23.分别查询信息系和计算机系的学生的姓名、性别、修课名称、修课成绩,并要求将这两个查询结果合并成一个结果集,并以系名、姓名、性别、修课名称、修课成绩的顺序显示各列。

24.用子查询实现如下查询:

相关文档
最新文档