欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

in 在sql语句中的用法

程序员文章站 2024-03-02 18:44:22
...

查询没有学全所有课的学生的学号、姓名

in 在sql语句中的用法score表

in 在sql语句中的用法course表

in 在sql语句中的用法student表

分析:按要求来题目要求的意思是该学生选修的课程数<总的课程数

思路:

第一步:查询成绩表中学生选课没选足的学号

 先根据学号group by 分组

针对分组后的结果 筛选出count(课程号)<  course表中总的course数

第二步:对一步查询结果关联student表 使 学号 in (第一步结果集)

总结:先将子查询确定,在用in 关键词关联结果集

SELECT
	学号,
	姓名
FROM
	student
WHERE
	学号 IN (
		SELECT
			`学号`
		FROM
			score
		GROUP BY
			学号
		HAVING
			COUNT(`课程号`) < (
				SELECT
					COUNT(课程号)
				FROM
					course
			)
	)

 

 

 

相关标签: in SQL