15 多表查询之子查询
带in(子条件是否包含,包含则筛选出来)的子查询:
查询学生生日在91年之后的学生
Select cno from student where birthday > ‘1991-01-01’;
查询学生生日在91年之后的班级的信息。
Select * from classes where cid in(Select con from student where birthday > ‘1991-01-01’);
带exists(子条件是否 存在,如果存在 前面的SQL语句才会执行) 的子查询:
查询学生生日大于91年1月1日,如果记录存在,前面的SQL语句就会执行。
Select * from class where exists (Select cno from student where birthday > ‘1991-01-01’);
带any(只要大于一个就可以)的子查询:
只要班级cid大于一个的就可以
select * from classes where cid > ANY (Select cno from student );
带all(大于全部的才可以)的子查询:
班级cid大于所有的才满足条件
select * from classes where cid > ALL (Select cno from student );