sql sever 查询选课人数不足4人的课程号及人数信息(含无学生选修的课程)
可以使用以下 SQL 语句查询选课人数不足4人的课程号及人数信息:
SELECT c.课程号, COUNT(s.学号) AS 选课人数 FROM 课程表 c LEFT JOIN 选课表 s ON c.课程号 = s.课程号 GROUP BY c.课程号 HAVING COUNT(s.学号) < 4 OR COUNT(s.学号) IS NULL;
其中,课程表和选课表分别是存储课程信息和选课信息的数据库表,LEFT JOIN 表示左连接,即包含左表中的所有记录和右表中符合条件的记录,COUNT 函数用于统计选课人数,GROUP BY 用于按课程号分组,HAVING 用于筛选选课人数不足4人的课程。
SQL SEVER 查询选修课程数低于3门的学生信息(需含未选课的学生信息)
可以使用以下 SQL 查询语句来获取选修课程数低于3门的学生信息(包括未选课的学生信息):
SELECT s.* FROM students s LEFT JOIN enrollments e ON s.student_id = e.student_id GROUP BY s.student_id HAVING COUNT(e.course_id) < 3 OR COUNT(e.course_id) IS NULL;
其中,students 表存储学生信息,包括学生ID、姓名等;enrollments 表存储学生选修的课程信息,包括学生ID、课程ID等。LEFT JOIN 用于将学生信息和选课信息进行关联,GROUP BY 用于按照学生ID进行分组,HAVING 用于筛选选修课程数低于3门的学生信息。
SQL SEVER 语句查询选修课程数低于3门的学生信息(需含未选课的学生信息)
SELECT * FROM Students WHERE StudentID NOT IN ( SELECT StudentID FROM CourseSelection GROUP BY StudentID HAVING COUNT(CourseID) >= 3 )
相关推荐














