aiLabel:

SQL中EXISTS怎么用

年少轻狂
好评回答

EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False

操作方法

EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或FalseEXISTS 指定一个子查询,检测 行 的存在。语法: EXISTS subquery参数: subquery 是一个受限的 SELECT 语句 (不允许有 COMPUTE 子句和 INTO 关键字)。结果类型: Boolean 如果子查询包含行,则返回 TRUE ,否则返回 FLASE 。

(一). 在子查询中使用 NULL 仍然返回结果集select * from TableIn where exists(select null)等同于: select * from TableIn

(二). 比较使用 EXISTS 和 IN 的查询。注意两个查询返回相同的结果。select * from TableIn where exists(select BID from TableEx where BNAME=TableIn.ANAME)select * from TableIn where ANAME in(select BNAME from TableEx)

(三). 比较使用 EXISTS 和 = ANY 的查询。注意两个查询返回相同的结果。select * from TableIn where exists(select BID from TableEx where BNAME=TableIn.ANAME)select * from TableIn where ANAME=ANY(select BNAME from TableEx)

NOT EXISTS 的作用与 EXISTS 正好相反。如果子查询没有返回行,则满足了 NOT EXISTS 中的 WHERE 子句。

结论:EXISTS(包括 NOT EXISTS )子句的返回值是一个BOOL值。 EXISTS内部有一个子查询语句(SELECT . FROM.), 我将其称为EXIST的内查询语句。其内查询语句返回一个结果集。 EXISTS子句根据其内查询语句的结果集空或者非空,返回一个布尔值。

一种通俗的可以理解为:将外查询表的每一行,代入内查询作为检验,如果内查询返回的结果取非空值,则EXISTS子句返回TRUE,这一行行可作为外查询的结果行,否则不能作为结果。

分析器会先看语句的第一个词,当它发现第一个词是SELECT关键字的时候,它会跳到FROM关键字,然后通过FROM关键字找到表名并把表装入内存。接着是找WHERE关键字,如果找不到则返回到SELECT找字段解析,如果找到WHERE,则分析其中的条件,完成后再回到SELECT分析字段。最后形成一张我们要的虚表。WHERE关键字后面的是条件表达式。条件表达式计算完成后,会有一个返回值,即非0或0,非0即为真(true),0即为假(false)。同理WHERE后面的条件也有一个返回值,真或假,来确定接下来执不执行SELECT。分析器先找到关键字SELECT,然后跳到FROM关键字将STUDENT表导入内存,并通过指针找到第一条记录,接着找到WHERE关键字计算它的条件表达式,如果为真那么把这条记录装到一个虚表当中,指针再指向下一条记录。如果为假那么指针直接指向下一条记录,而不进行其它操作。一直检索完整个表,并把检索出来的虚拟表返回给用户。EXISTS是条件表达式的一部分,它也有一个返回值(true或false)。

在插入记录前,需要检查这条记录是否已经存在,只有当记录不存在时才执行插入操作,可以通过使用 EXISTS 条件句防止插入重复记录。INSERT INTO TableIn (ANAME,ASEX)SELECT top 1 '张三', '男' FROM TableInWHERE not exists (select * from TableIn where TableIn.AID = 7)

EXISTS与IN的使用效率的问题,通常情况下采用exists要比in效率高,因为IN不走索引,但要看实际情况具体使用:IN适合于外表大而内表小的情况;EXISTS适合于外表小而内表大的情况。

年少轻狂 2024-05-16 22:05:39
本网站引用、摘录或转载上述内容仅供网站访问者交流或参考,文中观点或信息与爱问公司无关,与之相关的任何事务以及法律责任均与爱问公司无关。

最新回答 换一换

1

问:自酒能和横着放吗?

答:
答:自酒能和横着放的,可以斜放,也可以倒放。一般金属瓶盖内侧都会有一个塑料的垫圈防止液体渗漏。木塞的木质,它有一个特性,被液体浸泡之后它会有一个膨胀。一旦你直立储藏了。它干了,它会收缩,大量的氧气、空气进去以后,它会提前的老化乃至死亡。膨胀

相关推荐

牛铃是什么东西

牛铃是潮汕的本土奶酪,用生鲜牛奶煮沸加醋加盐凝固而成,通体雪白,营养丰富,送粥佳选,早餐在热粥中塞进一颗牛铃,待两三分钟后热粥温度适口,牛铃表面也已变软,轻轻一咬,唇齿间弥漫...
详情>
提问时间:2021-08-30

奶粉开封过保质期多久

一般袋装奶粉的保质期为一个星期保质期,罐装奶粉开封后保质期为一个月,因为不同的储藏方式,细菌滋生率也不一样。对于宝宝来说,不论是桶装的还是袋装的都要在开封后一个月内吃完,因为...
详情>
提问时间:2020-06-10

深蓝加点是什么梗

深蓝加点是说颜色可以再深点。眼、脑和我们的生活经验所产生的对光的视觉感受,我们肉眼所见到的光线,是由频率范围很窄的电磁波产生的,不同频率的电磁波表现为不同的颜色,对色彩的辨认...
详情>
提问时间:2020-08-12

圆珠笔印怎么去除衣服

衣服沾上圆珠笔印,可以在污渍处下面放一块毛巾,用小鬃刷沾上酒精顺丝轻轻刷洗待污渍溶解扩散后,再把衣服泡在冷水中,抹上肥皂轻轻刷洗,这样反复两三次,就能基本除去圆珠笔油。如果洗...
详情>
提问时间:2020-08-18

月经相差多少天是正常

月经相差2天左右为正常现象,因为月经的周期为28-30天,所以月经周期可能会多两天,或少两天。月经是女性正常的生理现象,绝大部分月经周期是28-30天一次,月经量在35-58...
详情>
提问时间:2020-02-02

体育文化有哪些特征

体育文化的特征包括健身性、娱乐性、竞争性、教育性、艺术性、民族性、国际性以及全民性,体育文化在广义上是指人类在历史发展进程中在体育方面创造的一切物质文明与精神文明的总和,在狭...
详情>
提问时间:2020-03-16

樱花花语及象征意义

樱花花语:冬樱花是日本夏季的一种应景花,其原产于中国的云南地区,被认为带有东方的神秘之感。冬樱花的味道可口,经常被用来食用,除此以外,其花姿可爱,有着无穷的魅力,因此其花语为...
详情>
提问时间:2020-07-01

永和县有名的小吃

永和县有名的小吃:1、饸饹面,用饸饹床子(做饸饹面的工具,有漏孔)把和好的荞麦面、高粱面(现多用小麦面)放在饸饹床子里,并坐在杠杆上直接把面挤轧成长条(面条状)放在锅里煮着吃...
详情>
提问时间:2020-08-08

老白茶指什么

老白茶即贮存多年的白茶。一般的茶保质期为两年,过了这个期限,茶的香气就会散失殆尽。但是白茶不同,储存年份越久,茶味越是醇厚和香浓,其药用价值和品饮价值也更高,因此有“一年茶、...
详情>
提问时间:2020-05-04

白酒10781.2是纯粮酒吗

白酒10781.2是纯粮酒,GB/T10781.2是清香型固态发酵白酒执行标准,属于纯粮食酒。传统固态法白酒生产是采用高粱、大米、糯米、玉米、小麦等原料,固态糖化发酵,开放式...
详情>
提问时间:2020-07-09

前孙子者孙子不遗谁说的

前孙子者孙子不遗茅元仪说的。这句话是体现了《孙子兵法》地位极高。《孙子兵法》又称《孙武兵法》、《吴孙子兵法》、《孙子兵书》、《孙武兵书》等,是中国现存最早的兵书,也是世界上最...
详情>
提问时间:2020-07-28

东盟是哪几个国家组成的

东盟有11国家组成分别为:中国、缅甸、老挝、泰国、柬埔寨、越南、菲律宾、文莱、新加坡、马来西亚、印度尼西亚。东南亚国家联盟(AssociationofSoutheastAsi...
详情>
提问时间:2020-01-02

怎样指导一年级学生写铅笔字

指导一年级学生写铅笔字,首先写字姿势的正确与否,直接影响着学生的写字质量。写字姿势包括执笔姿势和上课端坐的姿势。正确的执笔姿势:三指执笔,指的是大拇指、食指、中指分别从三个方...
详情>
提问时间:2019-11-04

公交车末班车时间是发车时间吗

末班车是指最后一班车发车时间。末班车时间是指当日当路车次某一个方向最后一班出发行驶车辆的时间。例如:从A站到B站的末班时间:22:00,就是说A站最后一班车的发车时间是22:...
详情>
提问时间:2019-04-10