位置: 编程技术 - 正文

sqlserver exists,not exists的用法

编辑:rootadmin
学生表:create table student( id number(8) primary key, name varchar2(),deptment number(8))选课表:create table select_course( ID NUMBER(8) primary key, STUDENT_ID NUMBER(8) foreign key (COURSE_ID) references course(ID), COURSE_ID NUMBER(8) foreign key (STUDENT_ID) references student(ID))课程表:create table COURSE( ID NUMBER(8) not null, C_NAME VARCHAR2(), C_NO VARCHAR2())student表的数据: ID NAME DEPTMENT_ID---------- --------------- ----------- 1 echo 2 spring 3 smith 4 liter course表的数据: ID C_NAME C_NO---------- -------------------- -------- 1 数据库 data1 2 数学 month1 3 英语 english1select_course表的数据: ID STUDENT_ID COURSE_ID---------- ---------- ---------- 1 1 1 2 1 2 3 1 3 4 2 1 5 2 2 6 3 .查询选修了所有课程的学生id、name:(即这一个学生没有一门课程他没有选的。)分析:如果有一门课没有选,则此时(1)select * from select_course sc where sc.student_id=ts.id and sc.course_id=c.id存在null,这说明(2)select * from course c 的查询结果中确实有记录不存在(1查询中),查询结果返回没有选的课程,此时select * from t_student ts 后的not exists 判断结果为false,不执行查询。SQL> select * from t_student ts where not exists (select * from course c where not exists (select * from select_course sc where sc.student_id=ts.id and sc.course_id=c.id)); ID NAME DEPTMENT_ID---------- --------------- ----------- 1 echo .查询没有选择所有课程的学生,即没有全选的学生。(存在这样的一个学生,他至少有一门课没有选),分析:只要有一个门没有选,即select * from select_course sc where student_id=t_student.id and course_id=course.id 有一条为空,即not exists null 为true,此时select * from course有查询结果(id为子查询中的course.id ),因此select id,name from t_student 将执行查询(id为子查询中t_student.id )。SQL> select id,name from t_student where exists(select * from course where not exists(select * from select_course sc where student_id=t_student.id and course_id=course.id)); ID NAME---------- --------------- 2 spring 3 smith 4 liter3.查询一门课也没有选的学生。(不存这样的一个学生,他至少选修一门课程),分析:如果他选修了一门select * from course结果集不为空,not exists 判断结果为false;select id,name from t_student 不执行查询。SQL> select id,name from t_student where not exists(select * from course where exists(select * from select_course sc where student_id=t_student.id and course_id=course.id)); ID NAME---------- --------------- 4 liter4.查询至少选修了一门课程的学生。SQL> select id,name from t_student where exists(select * from course where exists(select * from select_course sc where student_id=t_student.id and course_id=course.id)); ID NAME---------- --------------- 1 echo 2 spring 3 smith

推荐整理分享sqlserver exists,not exists的用法,希望有所帮助,仅作参考,欢迎阅读内容。

sqlserver exists,not exists的用法

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

sqlserver substring函数使用方法小结 在操作sqlserver时候用到了substring函数SUBSTRING(expression,start,length)参数expression字符串、二进制字符串、文本、图像、列或包含列的表达式。请勿使用包含聚

sql 判断数据库,表,存储过程等是否存在的代码 sql判断是否存在--判断数据库是否存在ifexists(select*frommaster..sysdatabaseswherename=N'库名')print'exists'elseprint'notexists'-----------------判断要创建的表名是否存

做购物车系统时利用到得几个sqlserver 存储过程 即以游客身份登录网站时以cookie的方式存储购物车,而以登录用户的身份进入时将购物车信息存储到数据库中去,若是先以游客身份完成购物再登录继

标签: sqlserver exists,not exists的用法

本文链接地址:https://www.jiuchutong.com/biancheng/349787.html 转载请保留说明!

上一篇:SQL 根据汉字获取全拼的代码(sql查询字段值为汉字的)

下一篇:sqlserver substring函数使用方法小结

  • 生育津贴是否需要申报免税所得
  • 增值税延期滞纳金是多少
  • 工伤保险应该计入什么科目
  • 经营许可证要交税吗
  • 代收款是什么套路
  • 农药增值税减免政策
  • 销售收入计入其他应付款
  • 处理企业的财产有哪些
  • 异地施工增值税发票如何开具
  • 以公司买房
  • 微信转账手续费怎么算
  • 联营企业的持股比例
  • 收到客户样衣定做款会计科目是什么?
  • 审核费用发票需要发票吗
  • 税控盘抵扣政策依据
  • 小规模纳税人附加税减半征收
  • 销售货物运费的增值税率
  • 企业生产经营模式
  • 长期待摊未摊完处置如何账务处理
  • 代驾费用入什么二级科目
  • 为什么Win7电脑开机时会卡在
  • linux怎么翻译
  • 税负率的销售收入是什么
  • 哪些固定资产不会随着时间的流逝贬值
  • 长期股权投资凭证
  • 城建税的会计账务处理
  • php unset()
  • 应付债券到期偿还
  • 一般纳税人出售旧设备的税率
  • 增值税价外费用是什么意思
  • 代开增值税额与实际缴款额差一分钱如何入账
  • linux suid
  • 手把手教你如何套路男神
  • vue-axios详细介绍
  • opencv的函数
  • 强化学习——Q-Learning算法原理
  • 阿里云 gtm
  • 小企业发票打印流程
  • dedecms官网
  • 小企业发出存货成本的计量方法有
  • 季度做账是什么意思
  • 预收账款转收入可以调以前年度吗
  • 怎么解决食堂拥挤问题
  • 古腾堡中文官网
  • java将整数转化为数组
  • mongodb数据表设计怎么写
  • 公积金怎么推出工资
  • 利润表中利息费用包括手续费吗
  • 一般纳税人简易计税方法适用范围
  • 公司购买股票会计分录怎么做
  • 免税农产品怎么开发票
  • 产品的包装费属于什么科目?
  • 应收帐款坏帐损失怎么算
  • 上一年的奖金在哪查
  • 企业所得税汇算清缴时间
  • 外购不动产用于办公
  • 不属于投资性房地产项目有自用房地产作为存货的
  • Sqlserver聚集索引和非聚集索引的区别
  • mysql如何列转行
  • freebsd使用wifi
  • Ubuntu Server 11.04安装GNOME 3的方法
  • centos安装类型选择
  • windows8启动项在哪里
  • windows7右下角网络图标不见了怎么办
  • [置顶] clauvio,Twitter小老鼠
  • 透视投影的作用
  • python cx_Oracle的基础使用方法(连接和增删改查)
  • bat读取文件内所有内容
  • css样式分为
  • IE、FF、Chrome浏览器中的JS差异介绍
  • android开发吧
  • 国税局调动
  • 甘肃省政府非税收入电子发票在哪里打印
  • 河南个人医保缴费查询
  • 西安车辆购置税缴纳多少
  • 加油河南app怎么注销
  • 国税发票如何查真伪查询
  • 软件企业增值税即征即退政策
  • 农转非和非农
  • 关于小规模纳税人的说法正确的有
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设