第1个回答 2009-11-07
我觉得这就是你想要的了。这个是学生选课的,我能保证的就是它的可靠性 ,它是我老师刚讲过的题。希望能够帮上你。
1、数据库查询设计
某个学籍数据库有如下表结构:
学生(学号,姓名,性别,出生日期,班级)
课程(课程号,课程名称,课程类别,课时)
选课(学号,课程号,成绩)
请完成下列查询要求。
1查询出“可视化0812”班的所有女生的学号和姓名。
SELECT 学号名
FROM
SELECT 学号, 姓名
FROM学生
WHERE班级 = ‘可视化0812’ AND性别 = ‘女’
WHERE 班级 = ‘可视化0812’ AND性别 = ‘女’
2.查询出课程名称中含有“语言”一词的课程的所有信息。
SELECT TOP 5学生.学号, 姓名, 班级
FROM学生 JOIN 选课 ON 学生.学号 = 选课.学号 JOIN 课程 ON课程.课程号 = 选课.课程号
WHERE课程名称 = ‘语言’
ORDER BY 成绩 DESC
FROM课程
WHERE课程名称 LIKE ‘%语言%’
3.查询出“关系数据库”课程成绩前5名的学生的学号、姓名和班级。
SELECT TOP 5学生.学号, 姓名, 班级
FROM学生 JOIN 选课 ON 学生.学号 = 选课.学号 JOIN 课程 ON课程.课程号 = 选课.课程号
WHERE课程名称 = ‘关系数据库’
ORDER BY 成绩 DESC
4.查询出各课程选修学生人数。
SELECT课程号, COUNT(*) AS 人数
FROM课程
GROUP BY课程号
5.查询出“计算机应用基础”课程成绩高于王五同学此门课程成绩的学生的学号和姓名。
SELECT学生.学号, 姓名
FROM 学生JOIN 选课 ON 学生.学号 = 选课.学号 JOIN 课程 ON课程.课程号 = 选课.号
WHERE课程名称 = ‘计算机应用基础’ AND 成绩 > (
SELECT成绩
FROM 学生JOIN 选课 ON 学生.学号 = 选课.学号 JOIN 课程 ON课程.课程号 = 选课.课程号
WHERE课程名称 = ‘计算机应用基础’ AND姓名 = ‘王五’
)