谁帮忙写三个sql语句

2011-10-17 00:58:17 +08:00
 zxle
四个表:
1学生表(学号 姓名 省份)
2系表(系ID 系名 学号)
3课程表(课程ID 名称 学生)
4成绩表(学号 课程ID 成绩)

要求写三个sql查询语句:
1 列出选修课程最多学生
2 列出选修“计算机原理”学生最少的系
3 列出每个系成绩的及格率(系的学生所选课程及格数/总课程数)
4387 次点击
所在节点    程序员
2 条回复
fmfsaisai
2011-10-17 01:06:41 +08:00
我怎么感觉这个应该放在Bitcoin节点
listenEcho
2023-01-03 17:41:58 +08:00
1. To find the student who has taken the most courses:



SELECT student, COUNT(*) as num_courses
FROM courses
GROUP BY student
ORDER BY num_courses DESC
LIMIT 1;


2. To find the department with the least number of students taking the course "Computer Principles":

SELECT department, COUNT(*) as num_students
FROM students
JOIN departments ON students.student_id = departments.student_id
JOIN courses ON students.student_id = courses.student_id
WHERE courses.name = 'Computer Principles'
GROUP BY department
ORDER BY num_students ASC
LIMIT 1;


3. To find the pass rate for each department (the percentage of courses passed by students in the department):

SELECT department,
SUM(CASE WHEN grades.grade >= 60 THEN 1 ELSE 0 END) / COUNT(*) AS pass_rate
FROM students
JOIN departments ON students.student_id = departments.student_id
JOIN grades ON students.student_id = grades.student_id
GROUP BY department;


FROM ChatGPT

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/19692

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX