EXISTS关键字:当EXISTS里的条件语句能够返回记录行时,条件为真,返回当前loop到的这条记录;反之,当前loop到的这条记录被丢弃。 NOT EXISTS关键字:NOT EXISTS与EXISTS相反,也就是当EXISTS条件有结果集返回时,loop到的记录将被丢弃,否则将loop到的记录加入结果集。
统计没有参加所有考试的学生
mysql> SELECT *-> FROM t_stu_profile b-> WHERE NOT EXISTS(-> SELECT *-> FROM t_score a-> WHERE a.stu_id = b.stu_id)-> ;
+--------+----------+--------+------+----------+
| Stu_id | Stu_Name | Gender | Age | Class_id |
+--------+----------+--------+------+----------+
| 5 | 王五 | F | 17 | 0614 |
| 6 | 赵七 | F | 16 | 0615 |
+--------+----------+--------+------+----------+