Exist用法
# Exist用法
# exists原理
语法: EXISTS subquery
参数: subquery 是一个受限的 SELECT 语句 (不允许有 COMPUTE 子句和 INTO 关键字)。
结果类型: Boolean 如果子查询包含行,则返回 TRUE ,否则返回 FLASE 。
EXISTS 用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值 True 或 False
EXISTS 指定一个子查询,检测行的存在。
强调的是是否返回结果集,不要求知道返回什么,比如:
select name from student where sex = 'm' and mark exists (select 1 from grade) ,
只要 exists 引导的子句有结果集返回,那么 exists 这个条件就算成立了,注意返回的字段始终为 1,如果改成
select 2 from grade where ...
那么返回的字段就是 2,这个数字没有意义。所以 exists 子句不在乎返回什么,而是在乎是不是有结果集返回。