SQL查询选修了全部课程的学生姓名解析

原创 2015年11月19日 16:45:41
查询选修le全部课程的学生姓名
select sname
from student
where not exists
(select *
from course
where not exists
(select *
from sc
where sno =student.sno

and cno=course.cno)


第一问:两个NOT EXISTS表示双重否定:没有一个选了课的学生没有选course表里的课程
select sname
from student
where not exists /*没有一个学生满足以下的条件*/
(select * from course
where not exists /*什么条件呢?没有选过Course表里的课*/
(select * from sc
where sno =student.sno /*这里两个=分别指对应的关系,表示选过课并且是

and cno=course.cno)  Course的课,只不过用not exists否定掉了*/


版权声明:本文为博主原创文章,未经博主允许不得转载。

SQL学习(5)查询选修全部课程的学生

在网上发现的一个经典问题,有标准的答案,分享下自己当时的思路。          问题:查询选修全部课程的学生姓名。                      学生信息表S:students(sn...
  • x280097128
  • x280097128
  • 2011年10月15日 14:14
  • 5507

SQL查询选修了所有课程的学生姓名

select sname from student where not exists (select * from course where not exists   (select * ...
  • u011042188
  • u011042188
  • 2014年06月12日 23:26
  • 6270

查询选修了全部课程的学生姓名

首先头脑中有三点概念:1 。 EXISTS 子查询找到的提交 NOT EXISTS 子查询中 找不到的提交 说明:不要去翻译为存在和不存在,把脑袋搞晕。 2 。 建立程序循...
  • yingli19940822
  • yingli19940822
  • 2016年11月17日 13:24
  • 4085

SQL查询选修了全部课程的学生姓名解析

查询选修le全部课程的学生姓名 select sname from student where not exists (select * from course where not exi...
  • hanghangde
  • hanghangde
  • 2015年11月19日 16:45
  • 3351

一道SQL:至少选修了学生002选修的全部课程的学生编号

INSERT test_c SELECT '001', '001' UNION ALL SELECT '001', '002' UNION ALL SELECT '001', '003' UNI...
  • chenhuijie666
  • chenhuijie666
  • 2014年08月22日 13:23
  • 1412

查询仅仅选修了指定的两门课程的学生学号

select studidfrom transcript where studid in(--选了这两门课的学生学号select studidfrom transcript where crscode...
  • naughty610
  • naughty610
  • 2010年03月17日 00:41
  • 4233

【Sql Server学习】Sql Server数据查询(三)

(1)查询信息系(IS)的所有学生的姓名,所选课程号及成绩。 select Sname,Cno,Grade from Student,SC where Sdept IN (selec...
  • u010800530
  • u010800530
  • 2015年03月09日 22:56
  • 882

查询选修全部课程的学生姓名和所属单位

查询选修全部课程的学生姓名和所属单位在解答这个问题之前先举一个小例子,现有3张表 S (SI,SN,SD,SA) SI,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄 C (CI...
  • qq_25237663
  • qq_25237663
  • 2015年07月09日 23:17
  • 1751

4. 查询全部学生都选修的课程的课程号与课程名称。

use hngy go /*查询全部学生都选修的课程的课程号与课程名称。*/ use hngy go select CourseInfo.CNO 课程编号,CourseInfo.CName 课程名称,...
  • gh769883346
  • gh769883346
  • 2015年10月23日 16:42
  • 1842

3. 查询至少选修两门课程的学生学号。

use hngy go /*查询至少选修两门课程的学生学号*/ select StuNO,count(CNO) 选修门数 from SC group by StuNO having count(...
  • gh769883346
  • gh769883346
  • 2015年10月23日 16:41
  • 2292
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL查询选修了全部课程的学生姓名解析
举报原因:
原因补充:

(最多只允许输入30个字)