文档库 最新最全的文档下载
当前位置:文档库 › 数据库实验

数据库实验

EXEC sp_rename '学生.出生时间','年龄'
/*1.查询有直接先行课的课程的课号,课名和先行课号*/
select 课程号,课程名,先行课号
from 课程表
where 先行课号 is not null
/*2.查询先行课号是“5”号课程的课号和课名*/
select 课程号,课程名
from 课程表
where 先行课号='5'

/*3.查询所有的软件工程系姓李的同学的学号和姓名*/
select 学号,姓名
from 学生
where 专业='软件工程' and 姓名 like '李%'

/*4.查询不在软件工程和数学系学习的学生的学号和姓名,系别*/
select 学号,姓名,专业
from 学生
where 专业 not in ('软件工程','数学')

/*5.查询年龄不在20-22之间的信息管理系的学生的学号,姓名和年龄*/
select 学号,姓名,年龄
from 学生
where 专业='软件工程' and (年龄<20 or 年龄>22)

/*6.查询没有选修‘1’号课程的学生的学号(注意去掉重复的元组)*/
select distinct 学号
from 学生
except
select distinct 学号
from 选课表
where 课程号='1'

/*7.查询每个学生的学号,姓名,年龄,并给年龄起别名为nianling*/
select 学号,姓名,年龄 as nianling
from 学生

/*7.查询软件工程系选修英语的平均成绩*/
select AVG(成绩)as 平均成绩
from 学生,课程表,选课表
where 学生.学号=选课表.学号 and 选课表.课程号=课程表.课程号
and 课程名='英语' and 专业='软件工程'

/*8.查询每个学生的学号,姓名,以及选修课程的课号和课名,成绩(包括没选课的学生已经没有被选修的课程)*/
select 学生.学号,学生.姓名,课程表.课程号,课程表.课程名,选课表.成绩
from 学生 left join 选课表 on 学生.学号=选课表.学号
full join 课程表 on 选课表.课程号=课程表.课程号

/*9.查询和王燕年龄相同的学生的学号,姓名和年龄*/
select 学生1.学号,学生1.姓名,学生1.年龄
from 学生 学生1,学生 学生2
where 学生1.年龄=学生2.年龄
and 学生1.姓名<>'王燕'
and 学生2.姓名='王燕'

/*10.查询选修英语的学生的学号和姓名(包括没有选课的学生) 有错*/
select distinct 学生.学号,学生.姓名,课程表.课程名
from 学生 left join 选课表
on 学生.学号=选课表.学号 join 课程表
on 课程名='英语'

/*11.查询各个专业的男同学与女同学的人数,查询结果显示专业,性别和人数*/
select 专业,性别,count(*) as 人数
from 学生
group by 专业,性别

/*12.查询所有选修模电的姓王与姓李的同学的学号与姓名*/
select 学生.学号,学生.姓名
from 学生,选课表,课程表
where 选课表.学号=学生.学号
and 选课表.课程号=课程表.课程号
and 课程名='模电'

/*13.查询每门课的课号课名以及该课程的选修人数和平均分与最高分*/
select
/*14.查询每个专业选修英语的同学的人数和最高分*/
/*1

5.查询没有选课的学生的学号和姓名*/
/*16.查询选修了6门以上课程的学生的学号和姓名*/
/*17.查询每个专业选修英语的人数,并显示明细*/
/*18.查询有间接先行课的每门课的课号,课名以及该课程的间接先行课名*/

相关文档