SQL经典50查询语句案例_10: 10、查询没有学全所有课的同学的学号、姓名: 在MySQL命令行中的运行情况: 总结:分步骤查询,先查询总课程数量和每个学生参与课程的数量(内嵌select from),然后利用查询结果的比较判断没有学全课的同学,进一步从student表 ...
我们来说一下思路: :先找所开的所有的课程 .在遍历每一个学,看在学生的课表里面是不是都有这些课,有的话说明全选了,没有的话就是没有全选。用NOT IN 这里的not in 和IN 有区别,我刚开始用 notexists in不行,后来用了exists not in 就好了。查出来的结果都不一样。 答案的做法是: ...
2016-12-01 14:06 0 11791 推荐指数:
SQL经典50查询语句案例_10: 10、查询没有学全所有课的同学的学号、姓名: 在MySQL命令行中的运行情况: 总结:分步骤查询,先查询总课程数量和每个学生参与课程的数量(内嵌select from),然后利用查询结果的比较判断没有学全课的同学,进一步从student表 ...
逛贴吧的时候遇到了这样一个问题 这样的表结构需要【查询没有学全所有课的同学的学号、姓名、以及未学科目】 ------------脚本------------------------- 解决问题,想法是【构造笛卡尔积】,然后通过【左连接】选出【成绩表】中不存在的【学生id ...
效果是: 我们查出来叶平的教的课的id是002和016.我们选出的学生同时有这两门课。 如下: -------------------------------------------------------------------------------------------------------------------------------------------- ...
查询没学过“叶平”老师课的同学的学号、姓名: 我们反着来 !不是要查没上过课的同学的名字吗。我们先查上叶平的课的学生。 思路: 1.先去查叶平上的课的课程id: 结果是: 2;去成绩表中(tblscore)查有这个课程id的学生。 结果如 ...
第一想法: 从分数表里面把小于60的学生id都查出来。 SELECT tblstudent.StuId,tblstudent.StuName FROM tblstudent WHERE (S ...
其实这个句子的意思我都没看懂, 答案是: Select StuId,StuName From tblStudent Where StuId In ( Select Distinct S ...
答案提供两种方法; 1: 2: ...