问答详情
源自:4-11 [Oracle] 单行子查询和多行子查询

查询最低工资大于20号部门最低工资的部门号和部门的最低工资.

select deptno,(select min(sal) from emp where deptno = e.deptno)

from emp e

where (select min(sal) from emp) > (select min(sal) from emp where deptno =20);

为什么没有查询结果?

提问者:修德 2016-12-10 11:38

个回答

  • 慕粉4296478
    2016-12-11 13:26:34
    已采纳

    改成这个样子就可以了

    select  deptno, (select min(sal) from emp where deptno = e.deptno) 

    from emp e

    group by deptno

    having (select min(sal) from emp where deptno = e.deptno ) > (select min(sal) from emp where deptno =20);


  • 针尖上的天使_0002
    2017-03-27 15:32:48

    select deptno,(select min(sal) from emp where deptno = e.deptno)from emp e where (select min(sal) from emp) > (select min(sal) from emp where deptno =20);因为你这条语句查询的结果为emp表的最低工资而这个最低工资正好就是20号部门的最低工资800,所以比较不成立就不会有输出结果。

  • 修德
    2016-12-11 14:27:32

    谢谢,我的意思是我代码没有执行结果的原因,但是还是非常感谢!