求选修了学号为“95001”学生所学过的所有课程的学生学号和姓名

对exists not exitsts不理解的可以看看这个:
链接: link.

题目:
设有关系模式为:
学生(学号,姓名,性别,年龄,所在系)
课程(课程号,课程名,先行课)
选课(学号,课程号,成绩)
问题:求选修了学号为“95001”学生所学过的所有课程的学生学号和姓名

1.思路分析,存在一门课程,学号“95001”学生选了,而某一个学生没有选,则这个学生不符合条件
2.sql语句:
	select 学号,姓名
	from 学生
	where not exists(
		select * 
		from 选课
		where 选课.学号="95001" and not exists(
			select * 
			from 课程
			where 课程.课程号=选课.课程号
			and 课程.学号=学生.学号));
	
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值