MySQL中EXISTS的用法

  • EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False
  • EXISTS 指定一个子查询,检测 行 的存在
mysql root@localhost:test> SELECT * FROM test
+----------+------------+---------+------------+
|   stu_id | stu_name   |   money | date       |
|----------+------------+---------+------------|
|       14 | daxiong     |      14 | 2016-12-15 |
|       15 | xiaofu        |      15 | 2019-12-16 |
|       16 | jingxiang   |      16 | 2008-01-12 |
|       17 | lufei           |      16 | 2017-02-12 |
|       18 | hello          |      16 | 2017-02-12 |
+----------+------------+---------+------------+

语法: EXISTS subquery
参数: subquery 是一个受限的 SELECT 语句 (不允许有 COMPUTE 子句和 INTO 关键字)。
结果类型: Boolean 如果子查询包含行(一行或者多行),则返回 TRUE ,否则返回 FLASE 。
注意:子查询内返回的是一个结果,存在行这个条件包括存在的行的值为NULL(注意不存在行值和行值为NULL的区别)

这里`SELECT NULL操作是有返回值的,所以返回为TRUE

参考博客:https://www.cnblogs.com/qlqwjy/p/8598091.html

你可能感兴趣的:(MySQL中EXISTS的用法)