五、多表查询-4.4子查询-行子查询

一、概述

子查询返回的结果是一行(可以是多列),这种子查询称为行子查询

常用的操作符:=、<>、in、not in

二、演示

【例】查询与“张无忌”的薪资及直属领导相同的员工信息

1、查询张无忌的薪资和直属领导

返回的结果是一行(可以多列)

2、查询与张无忌的薪资及直属领导相同的员工信息

3、合并两个,变为子查询

五、多表查询-4.4子查询-行子查询_第1张图片

【代码】

-- 行子查询
-- 1、查询与张无忌的薪资及直属领导相同的员工信息
--    a.查询张无忌的薪资和直属领导
select salary, managerid from emp1 where name = '张无忌';    -- 返回(12500, 1)
--    b.查询与张无忌的薪资及直属领导相同的员工信息
select * from emp1 where salary = 12500 and managerid = 1;
select * from emp1 where (salary, managerid) = (12500, 1);
-- 合并两个,变为子查询
select * from emp1 where (salary, managerid) = (select salary, managerid from emp1 where name = '张无忌');

你可能感兴趣的:(MySQL,数据库)