sql查询题目及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库中有如下三个表:
学生表(学号id,姓名name,性别sex,系部depart,年龄age)8个学生记录
选课表(学号id,课程号cid,成绩grade) 12门课程
课程表(课程号cid,课程名cname,学分Ccredit) 6门课程
学生-课程模式 S-T :
学生表:Student(Sno,Sname,Ssex,Sage,Sdept)
课程表:Course(Cno,Cname,Cpno,Ccredit)
学生选课表:SC(Sno,Cno,Grade)
1.从学生表中查询所有同学的所有信息
select*from学生表
2.从学生表中查询所有学生的信息,并分别赋予一个别名
select学号as xuehao,姓名as xingming,性别as xingbie,系部as xibu,年龄as nianling from学生表
3.从学生表中查询姓名是Allen的学生的信息
select*from学生表
where姓名='Allen'
4.从学生表中查询
学号在1101到1199之间的所有学生的信息
select*from学生表
where学号between 1101 and 1199
5.从学生表中查询年龄小于18和大于20的所有学生的学号和姓名
select学号,姓名from学生表
where年龄<18 or年龄>20
6.从学生表中查询计算机系年龄小于20的所有学生的信息
select*from学生表
where系部='computer'and年龄<20
7.从学生表中查询姓名以A开头的学生的信息
select*from学生表
where姓名LIKE'A%'
8.从学生表中查询姓名的第三个字符是A的学生的学号和姓名
select学号,姓名from学生表
where姓名LIKE'__A%'
9.从学生表中查询姓名中包含“llen”的学生的学号和姓名
select学号,姓名from学生表
where姓名LIKE'%llen%'
10.从学生表中查询姓名中包含“llen”且姓名只有5个字符的学生的学号和
姓名
select学号,姓名from学生表
where姓名LIKE'%llen%'and len(姓名)=5
11.从学生表中查询有年龄信息的学生的学号和姓名
select学号,姓名from学生表
where年龄is not null
12.从学生表中查询最大年龄和最小年龄
select max(年龄)最大年龄,min(年龄)最小年龄from学生表
13.从学生表中查询所有学生的平均年龄
select avg(年龄)平均年龄from学生表
14.从学生表中查询学校所有系的名字
select distinct系部from学生表
15.从学生表中查询学校共有多少个系
select count(distinct系部)系部总和from学生表
16.从选课表中查询所有学生的选课情况
select distinct课程号from选课表
17.从选课表中查询选修课程号为C01课程的学生的学号
select学号from选课表
where课程号='C01'
18.从选课表中查询所有没有选C02课程的学生的学号
select distinct学号from选课表
where课程号!='C02'
19.从选课表中查询有选修C01或C02课程的学生的学号
select distinct学号from选课表
where课程号='C01' or 课程号='C02'
20.从选课表中查询学号为1101的学生的选课情况
select课程号from选课表
where学号='1101'
21.从选课表中查询所有选课信息,即学号、课程号、成绩,并给成绩加8分
select学号,课程号,成绩=成绩+8 from选课表
22.从选课表中查询学号为1101的学生的所有选修课程成绩的总和
select sum(成绩)成绩总和from选课表
where学号='1101'
23.从选课表中查询选修课程好为C02所有学生的成绩平均值并赋予“平均成绩
24.”列名
select avg(成绩)平均成绩from选课表
where课程号='C02'
25.从选课表中查询选修课程号C02且该门课程考试及格的学生的学号
select学号from选课表
where课程号='C02'and成绩>=60
26.从选课表中查询所有无考试成绩的学生的学号和课程的课程号
select学号,课程号from选课表
where成绩is null
27.从选课表中查询选修了课程号以C开头的学生的学号和所选课程的课程号
select学号,课程号from选课表
where课程号LIKE'C%'
28.从选课表中查询选修了课程号以C、D或E开头学生的学号和所选课程的课程号
select学号,课程号from选课表
where课程号LIKE'[CDE]%'
29.从选课表中查询选修了课程号中包含DB的学生的学号和课程号
select学号,课程号from选课表
where课程号LIKE'%DB%'
30.从选课表中查询选修了课程的学生的学号
select distinct学号from选课表
where课程号is not null
31.从选课表中查询选修了课程的学生的人数
select count(distinct学号)总人数from选课表
31.找出姓名以D开头的学生姓名和所有成绩
select学生表.姓名,选课表.成绩
from学生表join选课表on学生表.学号=选课表.学号
where学生表.姓名LIKE'D%'
32.查找的所有学生姓名与学号,结果按学号降序排序
select 学号,姓名
from学生表
order BY学号DESC
33.查找成绩介于80和90之间的学生姓名,结果按成绩和姓名升序排序
select学生表.姓名
from选课表join学生表on学生表.学号=选课表.学号
where选课表.成绩between 80 and 90
order BY选课表.成绩,学生表.姓名
34.查找english系的所有学生姓名,结果按成绩和姓名升序排序
select学生表.姓名,学生表.学号,选课表.成绩
from选课表join学生表on学生表.学号=选课表.学号
where学生表.系部='english'