查询选课大于3门,平均分大于79的软件211班的学生姓名和学号用sql语言写
时间: 2024-05-27 10:14:19 浏览: 12
SELECT name, student_id
FROM students
WHERE class = '软件211' AND
(SELECT COUNT(*) FROM courses WHERE courses.student_id = students.student_id) > 3 AND
(SELECT AVG(score) FROM courses WHERE courses.student_id = students.student_id) > 79;
相关问题
sql sever查询选修课程数大于等于2 的学生的学号、平均成绩和选课门数,并按 平均成绩降序排列。
好的,你可以使用以下 SQL 语句来查询:
```
SELECT 选课表.学号, AVG(成绩) AS 平均成绩, COUNT(*) AS 选课门数
FROM 选课表
WHERE 选课表.学号 IN (
SELECT 学号
FROM 选课表
GROUP BY 学号
HAVING COUNT(*) >= 2
)
GROUP BY 选课表.学号
ORDER BY AVG(成绩) DESC;
```
其中,`选课表` 是你所查询的选课信息表的表名,`学号` 和 `成绩` 是你所需要的字段名。首先在子查询中筛选出选修课程数大于等于2的学生,然后在主查询中统计这些学生的平均成绩和选课门数,并按照平均成绩降序排列。
SQL查询SC数据库表选修课程数大于等于2 的学生的学号、平均成绩和选课门数,并按 平均成绩降序排列的代码。
SELECT student_id, AVG(grade) as avg_grade, COUNT(course_id) as num_courses
FROM SC
GROUP BY student_id
HAVING COUNT(course_id) >= 2
ORDER BY avg_grade DESC;