要求基本工资不大于1500,同时不可以领取奖金的雇员信息(这道题要是用exists来做)
我的做法:select * from emp where exists(select * from emp where sal<1500 and comm is null)
可是显示出来的却是全部记录.。请问错在哪里?
------解决思路----------------------
exists 内的表与exists 外的表没有关联
select * from emp a where exists(select null from emp b where b.sal<1500 and b.comm is null a.唯一字段=b.唯一字段);
看这个要求根本就没必要用到exists
------解决思路----------------------
是没有必要用
select * from emp where sal<1500 and comm is null
如果一定要用
select * from emp a where exists(select 1 from emp b where a.enpid=b.empid and b.sal<1500 and b.comm is null)