SQL中Exists的用法
SQL中Exists的用法
SQL中Exists的用法语法
EXISTS subquery
参数
subquery
是一个受限的 SELECT 语句 (不允许有 COMPUTE 子句和 INTO 关键字)。有关更多信息,请参见 Select 中有关子查询的讨论。
结果类型
Boolean
结果值
如果子查询包含行,则返回 TRUE。
说明
EXISTS(包括 NOT EXISTS )子句的返回值是一个BOOL值。 EXISTS内部有一个子查询语句(SELECT ... FROM...), 我将其称为EXIST的内查询语句。其内查询语句返回一个结果集。 EXISTS子句根据其内查询语句的结果集空或者非空,返回一个布尔值。
一种通俗的可以理解为:将外查询表的每一行,代入内查询作为检验,如果内查询返回的结果取非空值,则EXISTS子句返回TRUE,这一行行可作为外查询的结果行,否则不能作为结果。
Exists是子查询的一种条件形式,通过判断Exists的选择表达式(括号内的部分)的结果,如果存在一行或多行结果记录,则Exists整个子查询结果为真,否则为假。由于我们采用Exists来实现子查询,只需要关心是否存在满足条件的记录,所以选择表达式的选择列表采用*来实现,当然,你也可以在选择列表指明具体的某些列,但这些列将在整个搜索过程中被忽略。
Exists实例
select Resc_id from dbo.Res_Coach
where EXISTS (select * from Res_Coach where Resc_id is null)
查询原理:
遍历dbo.Res_Coach每一条,同时处理where条件(EXISTS (select * from Res_Coach where Resc_id=0) 判断结果为true或者false),为true时拿出该条,false时,放弃该条记录。
-- 1、 where条件中的子查询和主查询没关系
select Resc_id
from dbo.Res_Coach
where EXISTS (select Rese_id from dbo.Res_Excellent where Rese_id Is null )
-- 2、 where条件中得子查询和主查询有关系
select Resc_id
from dbo.Res_Coach
where EXISTS (select Resc_id from dbo.Res_Coach where Resc_id Is null )
实例备注:不管where条件中得子查询和主查询有没有关系,遍历主查询中得每一条时,判断where条件,exists结果为真,where条件返回true,拿出该条记录,where条件返回false, 不返回该记录。
Exists 和 In 的选择
如果查询的两个表大小相当,那么用in和exists差别不大。如果两个表中一个较小,一个是大表,则子查询表大的用exists,子查询表小的用in
- 如何看idea连接mysql数据库(IDEA 链接Mysql数据库并执行查询操作的完整代码)
- mysql8.0.12安装教程图解(mysql 8.0.22 zip压缩包版免安装下载、安装配置步骤详解)
- MySQL中对varchar类型的排序
- 怎样查看mysql的ddl窗口(详解MySQL8.0原子DDL语法)
- python mysql配置(详解python校验SQL脚本命名规则)
- sqlserver 使用SSMS运行sql脚本的六种方法(sqlserver 使用SSMS运行sql脚本的六种方法)
- SQL中not in有Null值时
- sql datalength与len区别
- mysql 查询语句group by用法(MySQL group by和order by如何一起使用)
- mysql主机双向复制配置(浅析MySQL并行复制)
- mysql自增锁(深入剖析 MySQL 自增锁)
- mysql的连接代码(MySQL 连接查询的原理和应用)
- mysql8.0.23.0官方安装手册(MySQL8.0.23安装超详细教程)
- SQL group by分组查询
- sql两列内容合并(分组字符合并SQL语句 按某字段合并字符串之一简单合并)
- SQL语句分析工具Plan Explorer
- 解析葡萄牙6-1瑞士 进攻多点开花,贡萨洛-拉莫斯一战成名(解析葡萄牙6-1瑞士)
- 这支 奇兵队 腕大 有范儿还各怀绝技,毒贩杀人犯见了都要仓皇而逃(这支奇兵队腕大)
- 雄藩崛起 奇兵队与幕末长州藩军事改革(雄藩崛起奇兵队与幕末长州藩军事改革)
- 九月初,爱如蜜糖,甜到心扉,迷恋彼此,一日不见兮,思之若狂(九月初爱如蜜糖)
- ()
- 对你思念入骨的女人,跟你见面时会有这几种表现,藏都藏不住(对你思念入骨的女人)
热门推荐
- vsftpd详细配置(vsFTPd 服务器初学者指南)
- css布局详细介绍(浅谈CSS 栅格系统布局原理分析)
- dedecms关闭站点(dedecms搬家后出现/include/templets/default/index.htm Not Found!解决方案)
- mysql中默认排序教程(基于mysql 默认排序规则的坑)
- html5图片做背景代码(Html5之webcoekt播放JPEG图片流)
- dedecms如何使用(使用dedecms制作英文站的技巧说明)
- SQL SERVER中与内存相关的计数器
- phpredis怎么测试成功(PHP+redis实现的限制抢购防止商品超发功能详解)
- js基础入门到高级教程(浅谈如何循序渐进的学好JS)
- 云主机免费体验(免费云主机试用一年靠谱吗)