位置: 编程技术 - 正文

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函数使用方法小结

  • 非税收入票据能否税前扣除
  • 疫情期间公司买水
  • 小规模增值税纳税申报
  • 编制初始计量有什么要求
  • 医疗设备的折旧年限是多少年
  • 分公司的所得税怎么申报
  • 文化事业建设费减免政策
  • 稽查查补税款能缓缴
  • 单位聘请的临时工请假旅游
  • 分摊费用怎么说合适
  • 代收车船税没有发票能走帐吗
  • 产品质量赔款的账务处理
  • 长期股权变更
  • 租房发票房产税怎么算
  • 周年庆典布置现场
  • 取得拍卖的固定资产
  • 代驾公司增值税怎么交
  • 印花税销售收入按50%计算征收
  • 金税盘服务费可以当月抵扣吗
  • 主营业务成本没有结转怎么办
  • 增值税税率变动情况
  • 退税勾选后怎么申报
  • 增长率应该要如何计算呢?
  • 运费用会计分录
  • 员工退回多发的工资,是上缴国库还是财政专户
  • 应付工资薪酬期末应该为0吗
  • 冲销以前年度多做的其他应收款
  • windows11 微软
  • 福利费发票已认证怎么查
  • 异地使用支票的提示付款期限
  • 固定资产投资账务处理
  • 正常损失非正常损失
  • 一般贸易和进料加工贸易的区别
  • 定额征收的个体户怎么做账
  • react最新教程
  • 存货核算的会计分录怎么写
  • curl error6
  • php用正则匹配网页的logo
  • vue-axios详细介绍
  • read命令功能
  • 哪些农产品属于免税
  • 收回已核销的坏账并入账是什么意思
  • 爱上源码,重学Spring IoC深入
  • 库存盘点差异会计分录
  • 实收资本 增加
  • 企业所得税应纳税额的计算公式
  • 个税申报不成功,累计减除费用60000审核不通过
  • 原材料月底结转到制造费用吗
  • 发票上多盖了一个发票章
  • 海关进口增值税专用缴款书如何抵扣
  • python中with语句的用法
  • 调整未分配利润影响所得税吗
  • 劳务外包会计分录最新
  • 积分购物骗局
  • 某首饰商城为增值税一般纳税人,2021年1月发生以下业务
  • 固定资产未提完折旧
  • 自制产品无偿赠送合法吗
  • 城镇土地使用税的计税依据
  • 个体户银行开户所需资料
  • 什么是摊余成本法
  • JDBC探索之SQLException解析
  • mysql索引实战
  • 压缩sql数据库
  • 雨林木风 u盘
  • win8windows设置在哪里
  • 从根上保证电脑安全、不中毒的方法
  • Ubuntu软件源更新
  • imac硬盘测试
  • win7怎么更改电脑名字
  • 电脑系统 win7
  • win7的语言栏不见了
  • ExtJS Ext.MessageBox.alert()弹出对话框详解
  • 环境篇心中有光的作文
  • perl数组元素个数
  • node.js和go
  • js的settimeout方法
  • Backbone.js 0.9.2 源码注释中文翻译版
  • win10下python
  • 内蒙古国家税务局网上电子税务局官网
  • 准予扣除是什么意思
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设