EXISTS语句的子查询

一、EXISTS运算符简介:

  使用EXISTS语句可以测试集合是否为空,EXISTS语句通常与子查询结合在一起使用。只要子查询中至少返回一个值,则EXISTS语句的值就为True。EXISTS子查询的语法结构如下:

Select   
Field1,Field2,…,Fieldn  
From tableName  
Where [NOT] EXISTS(SubSelect) 

  语句中相关参数的说明如下所示。

Field1,Field2,…,Fieldn:表示要查询的多个字段名称,各字段之间需要使用逗号隔开。

tableName:表示数据表的名称。

SubSelect:表示一个子查询的查询表达式。

说明:EXISTS运算符的含义为"存在",即用于从一个数据集中查询在另一个数据集(子查询)中存在的数据记录。使用 EXISTS 关键字引入一个子查询时,就相当于进行一次存在测试。外部查询的 WHERE 子句测试子查询返回的行是否存在。子查询实际上不产生任何数据;它只返回 TRUE 或 FALSE 值

、下面通过实例讲解有关使用EXISTS语句实现子查询的实现方法:

  1、例1

01  select   
02  编号,货物名称,数量,入库时间  
03  from 货物信息 as a  
04  where EXISTS (select 名称 from 商品库存 where 名称=a.货物名称) 

  其执行结果为:

  2、例2:

  这道题应该选择A

参考自:http://book.51cto.com/art/201002/183908.htm

原文地址:https://www.cnblogs.com/of-fanruice/p/7544597.html