(1)查询选修课程号为C01,并且成绩及格的学生学号、姓名和系别名称。 (2)查询计算机学院选修C03课程的学生姓名、课程名称以及这门课程的成绩。(3)在Reports表中查询至少选修课了程号为C01和C02的学生学号和姓名。(4)查询既没有选修课程号C01,也没有选修课程号C02的学生的学号和姓名。(5) 查询每个同学基本信息及其选修课程的情况。(6)查询每个学生及其选修课程的情况(若某一个学生没有选课,只输出学生的基本情况信息,其选课信息为空值)。 (7)查询选修了课程名为“GIS开发”的学生学号和姓名。(8) 查询没有选修C02课程的学生学号和姓名。 (9)查询所有课程成绩均大于90分的学生学号和姓名。(10)查询选修了4门及以上课程的学生的学号、姓名和选修课程数。(11) 查询选修全部课程的学生姓名,相当于查询这样的学生,没有一门课程是他不选的。 (12) 查询平均成绩大于等于黄河同学的平均成绩的学生的学号、姓名和平均成绩。(13)查询每门课程获得最高分的同学的学号、姓名、课程名称和成绩,并按照最高成绩从高到低进行排序。
时间: 2023-11-16 16:37:26 浏览: 111
学生成绩管理系统 系统功能基本要求 学生信息,学号、姓名、性别、专业、年级等
很抱歉,我是一个语言模型AI,无法查询数据库。但是我可以为您提供一些SQL语句示例,您可以根据需要自行修改:
1. SELECT student.id, student.name, department.name
FROM student, department, score, course
WHERE student.id = score.id AND score.course_id = course.id AND
course.id = 'C01' AND score.score >= 60 AND student.dept_id = department.id;
2. SELECT student.name, course.name, score.score
FROM student, course, score
WHERE student.id = score.id AND score.course_id = course.id AND
course.id = 'C03' AND student.dept_id = '计算机学院';
3. SELECT DISTINCT student.id, student.name
FROM student, score
WHERE student.id = score.id AND
score.course_id IN ('C01', 'C02');
4. SELECT student.id, student.name
FROM student
WHERE student.id NOT IN
(SELECT id FROM score WHERE course_id IN ('C01', 'C02'));
5. SELECT student.id, student.name, department.name, course.name, score.score
FROM student
LEFT JOIN score ON student.id = score.id
LEFT JOIN course ON score.course_id = course.id
LEFT JOIN department ON student.dept_id = department.id;
6. SELECT student.id, student.name, department.name, course.name, score.score
FROM student
LEFT JOIN score ON student.id = score.id
LEFT JOIN course ON score.course_id = course.id
LEFT JOIN department ON student.dept_id = department.id
GROUP BY student.id;
7. SELECT student.id, student.name
FROM student, score, course
WHERE student.id = score.id AND score.course_id = course.id AND
course.name = 'GIS开发';
8. SELECT student.id, student.name
FROM student
WHERE student.id NOT IN
(SELECT id FROM score WHERE course_id = 'C02');
9. SELECT student.id, student.name
FROM student, score
WHERE student.id = score.id
GROUP BY student.id
HAVING MIN(score.score) > 90;
10. SELECT student.id, student.name, COUNT(*) AS course_num
FROM student, score
WHERE student.id = score.id
GROUP BY student.id
HAVING course_num >= 4;
11. SELECT student.name
FROM student, course
WHERE NOT EXISTS
(SELECT * FROM course
WHERE NOT EXISTS
(SELECT * FROM score
WHERE score.course_id = course.id AND score.id = student.id));
12. SELECT s1.id, s1.name, AVG(s1.score)
FROM student s1, student s2, score sc1, score sc2
WHERE s1.id = sc1.id AND s2.id = sc2.id AND
s2.name = '黄河' AND AVG(sc2.score) <= AVG(sc1.score)
GROUP BY s1.id
HAVING AVG(sc1.score) >= AVG(sc2.score);
13. SELECT score.id, student.name, course.name, score.score
FROM score, student, course
WHERE score.id = student.id AND score.course_id = course.id AND
score.score = (SELECT MAX(score.score) FROM score WHERE score.course_id = course.id)
ORDER BY score.score DESC;
阅读全文