50个查询系列-第七个查询:查询学过“叶平”老师所教的所有课的同学的学号、姓名...
效果是:
我们查出来叶平的教的课的id是002和016.我们选出的学生同时有这两门课。
如下:
-------------------------------------------------------------------------------------------------------------------------------------------------
具体的做法:
第一步:查找叶平的id
select tblteacher.TeaId from tblteacher where tblteacher.TeaName='叶平'-- 查出叶平老师的id
第二步:查找叶平上的课的id
select tblcourse.CourseId from tblcourse where tblcourse.TeaId=
(
select tblteacher.TeaId from tblteacher where tblteacher.TeaName='叶平'-- 查出叶平老师的id
)-- 叶平老师上的课的课程id
结果:
然后就碰到了问题卡在这里了。
遇到的问题是:
我们要查的是上过这两门课的人(001,016)就是说这个人是这样的:
怎么去查呢? 语句:
select st.StuId,st.StuName from tblstudent st where NOT EXISTS ( /* 要满足的条件是: 1:查叶平的id(两个) 2:叶平的两个id(看做一个整体)不能包含在我学生对应的查出来的成绩表中的课程id */ select tblcourse.CourseId from tblcourse where tblcourse.TeaId= ( select tblteacher.TeaId from tblteacher where tblteacher.TeaName='叶平'-- 查出叶平老师的id ) and tblcourse.CourseId nOT IN( SELECT TBLSCORE.CourseId FROM TBLSCORE WHERE tblscore.StuId=st.StuId) )
这里对NOT EXISTS说明一下。
NOT EXISTS(。。。。。)
。。。查出来有结果那么就返回true,但是因为NOT,所以又变成了false,那么select就不返回任何东西。
。。。查出来没有结果那么返回就是false。但是因为NOT.所以又变成了true,那么select 就返回那个查询结果。
50个查询系列-第七个查询:查询学过“叶平”老师所教的所有课的同学的学号、姓名...相关推荐
- 学习记录375@查询学过“谌燕”老师所教的所有课的同学的学号、姓名-MySQL
这玩意折磨了我一个小时,必须记录一下!解题思路和答案在最后. 相关表 CREATE DATABASE stumsc; CREATE TABLE student(sno VARCHAR(10) PRIM ...
- 6、查询学过“张三”老师所教的所有课的同学的学号、姓名(重点)
-- 6.查询学过"张三"老师所教的所有课的同学的学号.姓名(重点) SELECT d.s_id,d.s_name,a.t_name,c.c_id FROM teacher as ...
- 【原创】StreamInsight查询系列(十九)——查询模式之检测异常
上篇文章介绍了查询模式中如何发现趋势,这篇博文将介绍StreamInsight中如何检测异常. 测试数据准备 为了方便测试查询,我们首先准备一个静态的测试数据源: var now = DateTime ...
- 查询选修了课程表中所有课的同学的学号、姓名
[表名和字段] 有如下几个表,分析问题选择合适的表进行查询 1.学生表 student(sid,sname,gender,class_id) 学生编号,学生姓名,学生性别,班级编号 2.课程表cour ...
- Linq To Sql进阶系列(七)动态查询续及CLR与SQL在某些细节上的差别
在上面一篇文章Linq To Sql进阶系列(六)中,我们提到了使用object的动态查询.本文在上文的基础上,再做更加深入的引申.同时修正上文中一些不妥的地方. 1, object的动态查询续 首先 ...
- 【原创】StreamInsight查询系列(六)——基本查询操作之分组聚合
上篇博文介绍了StreamInsight基础查询操作中的用户自定义聚合部分.这篇文章将主要介绍如何在StreamInsight查询中使用分组聚合. 测试数据准备 为了方便测试查询,我们首先准备一个静态 ...
- SQL查询系列之六:SQL模糊查询
2019独角兽企业重金招聘Python工程师标准>>> 在SQL结构化查询语言中,LIKE语句有着至关重要的作用.LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式. ...
- 【原创】StreamInsight查询系列(三)——基本查询操作之过滤
上篇博文介绍了如何在LINQPad中输出StreamInsight查询结果.这篇文章将主要介绍StreamInsight基础查询操作中的过滤部分. 测试数据准备 为了方便测试查询,我们首先准备一个静态 ...
- 【原创】StreamInsight查询系列(十)——基本查询操作之联接
上篇博文介绍了StreamInsight基础查询操作中的决胜排序部分.这篇文章将主要介绍如何StreamInsight基本查询的最后一篇--联接. 测试数据准备 为了方便测试查询,我们首先准备一些静态 ...
- 【数据库 Mysql查询系列】--检索出stu表中‘计算机工程’或‘软件工程’专业的学生的记录,结果集按学号升序排序。
涉及到的两个表: 代码如下: select sno as 学号,sname as 姓名,sex as 性别,mname as 专业 from stu,major where stu.mno=major ...
最新文章
- win7硬件要求_电脑硬件运行游戏测评
- 管道无损检测python_武汉哪里有便携式X射线探伤机使用方法欢迎咨询
- 计算机网络基础期中测试题,计算机网络基础期末考试试题
- 离散哈特莱变换(DHT)及快速哈特莱变换(FHT)学习
- 【渝粤题库】陕西师范大学292969 会计学 作业 (专升本、高起本)
- “CV_RGB2BGR”: 未声明的标识符
- C/C++判断操作系统(Win10,Win8.1WinServer等等)-完整源码及思路
- [分享] Flask 网络开发经典书籍: Flask Web Development
- 想通过C++寻找后端开发工作如何提升自己?
- php家乡介绍网页,家乡网站设计与实现.doc
- 推荐用于BMS锂电池管理系统的低功耗蓝牙芯片MS1656
- Android常用播放器对比,谁更好用?四款Android音乐播放器对比
- 浅谈 Unity、iOS、Android 闭包的使用方法
- 如何使用NVivo进行定性研究?
- 大数据中台架构以及建设全流程二(Daas层设计)
- java重置按钮功能函数_Bootstrap按钮功能之查询按钮和重置按钮
- 西南民族大学第十届校赛(同步赛)(J题——怪盗基德 月之瞳宝石)
- php file取不到手机相册,php file_get_contents 读取不了图片
- 自考计算机数据结构导论,自考数据结构导论……
- 斑马快传,高效安全的内外网文件传输软件,可穿透网闸服务器杀毒。
热门文章
- 移动海信IP102H_905L3-B_线刷固件包
- Android加载服务器的静态图片文件
- 狂神说java-Mybatis
- 数据库基础学习-计划内容 For 小样儿
- 内存分配方式及内存碎片
- 虚假共识—阿比勒尼悖论:“枪打出头鸟”与“事后诸葛亮”
- 在外置移动硬盘中安装Win10
- Maya界面编程入门:在Maya中使用Qt
- 英雄无敌6服务器在哪个文件夹,win7系统英雄无敌6无法运行的解决方法
- android前置录像,Android Camera2video使用前置摄像头(Android Camera2video use front camera)