子查询
子查询是另一个更大查询中的查询。它们对于获取稍后将在主查询中使用的特定信息很有用。
类型
单行子查询:返回单个值。
多行子查询返回多行
相关子查询它取决于主查询中的列,这意味着它对外部查询中的每一行执行一次。
嵌套子查询其中包含另一个子查询的子查询。
标量子查询返回单个值(类似于单行子查询),但可以用作 select 中的列。
子查询可以出现在查询的 3 个位置:
选择来自或内部哪里每个部分都有一套规则。例如:
select 中的子查询应返回单个值,例如:select nombre, (select max(salary) from employees) as max_salaryfrom employees;
from or inner 中的子查询应返回一组行
where 中的子查询应返回包含许多行的列,例如:
SELECT NAME FROM EMPLOYEES WHERE DEPARTMENT_ID = (SELECT ID FROM DEPARTMENTS WHERE DEPARTMENT = 'IT');