前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL谓词 EXISTS

SQL谓词 EXISTS

作者头像
用户7741497
发布2022-05-09 13:37:28
3480
发布2022-05-09 13:37:28
举报
文章被收录于专栏:hml_知识记录

SQL谓词 EXISTS

检查表中是否至少存在一个对应行。

大纲

代码语言:javascript
复制
EXISTS select-statement

参数

  • select-statement - 一种简单的查询,通常包含一个条件表达式。

描述

EXISTS谓词测试指定的表,通常至少测试一行是否存在。 因为EXISTS后面的SELECT语句正在被检查是否包含某些内容,所以子句通常是这样的形式:

代码语言:javascript
复制
EXISTS (SELECT... FROM... WHERE...)
代码语言:javascript
复制
SELECT name
     FROM Table_A
     WHERE EXISTS
     (SELECT *
          FROM Table_B
          WHERE Table_B.Number = Table_A.Number)

在本例中,谓词测试子查询指定的一行或多行是否存在。

注意,测试必须发生在SELECT语句上(而不是在UNION上)。

NOT EXISTS子句测试表中是否有一行不存在,如下例所示:

代码语言:javascript
复制
SELECT EmployeeName,Age
     FROM Employees
     WHERE NOT EXISTS (SELECT * FROM BonusTable
     WHERE NOT (BonusTable.Result = 'Positive'
     AND Employees.EmployeeNum = BonusTable.EmployeeNum))

EXISTS可以在任何可以指定谓词条件的地方使用,如本手册的谓词概述页面所述。

在适用的情况下,系统自动对存在或不存在的子查询应用集值子查询优化(SVSO)。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SQL谓词 EXISTS
  • 大纲
  • 参数
  • 描述
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档