mysql004子查询.相关子查询.不相关子查询

子查询:相关子查询,不相关子查询

-- 不相关子查询

-- 一条SQL语句含有多个select,先执行子查询,在执行外部查询。子查询可以独立运行,成为不相关子查询。

-- 需求1:查询所有比姓名为“CLARK”工资高的员工的信息。

-- 1.先查询出姓名为CLARK的工资信息

SELECT * FROM emp;

SELECT SAL FROM emp WHERE ENAME='CLARKE';

-- 2.在查询比当前工资高的员工

SELECT * FROM emp WHERE SAL>(SELECT SAL FROM emp WHERE ENAME='CLARKE');

-- 需求2:查询所有和姓名为“AAA”工资相等的员工信息

-- 1.先查询姓名为AAA的员工薪资

SELECT SAL FROM emp WHERE ENAME="AAA";

-- 2.在查询薪资和AAA相等的员工

SELECT * FROM emp WHERE SAL=(SELECT SAL FROM emp WHERE ENAME="AAA");

-- 需求:3:查询工资低于任意一个岗位为“CLERK”的工资雇员信息

-- 查询岗位为CLERK的所有薪资

SELECT * FROM emp;

SELECT SAL FROM emp WHERE JOB="CLERK";

-- 小于任意一个工资,相当于小于最高工资

SELECT * FROM emp WHERE SAL

-- 小于所有工资,相当于小于最低工资,

SELECT * FROM emp where sal

SELECT * FROM emp where sal <(SELECT MIN(SAL) FROM emp WHERE JOB="CLERK");

-- 工资等于其中任何一个,工资等于800 or 300 or 1100 or 950 or 1300

SELECT * FROM emp where sal in (SELECT SAL FROM emp WHERE JOB="CLERK");

mysql004子查询.相关子查询.不相关子查询_第1张图片

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