查询所有月薪不是3000与5000的员工的信息,为什么下面的写法不对?
select * from emp where sal <> any(3000,5000); --查询不对select * from emp where sal not in(3000,5000); ---这可以
查询月薪是3000与5000的员工的信息。
select * from emp where sal =any(3000,5000); ---这可以
查询所有月薪不是3000与5000的员工的信息。
select * from emp where sal !=any(3000,5000); ----这错误 ,为什么?
select * from emp where sal <> any(3000,5000); --查询不对select * from emp where sal not in(3000,5000); ---这可以
查询月薪是3000与5000的员工的信息。
select * from emp where sal =any(3000,5000); ---这可以
查询所有月薪不是3000与5000的员工的信息。
select * from emp where sal !=any(3000,5000); ----这错误 ,为什么?
解决方案 »
- toad与plsql导出oracle表的问题
- 如何配置Oracle Home
- 选择字段间用tab键隔开?急
- 新手建表空间的问题
- 请教一条SQL语句,关于 Select * from 表名 ,表名可以动态变化的
- 关于oracle 9i 的安装权限----------急啊!
- 请问sqlca.sqlerrd[2]是什么意思
- 怎样才能在oem成功登陆oracle?
- 安Oracle的过程中出现以下错误:ORA-12705:invalid or unknown NLS parameter value specified
- 好奇怪 !
- Oracle 11g R2客户端与服务器端在同一台机器,无法配置监听
- 数据库系统概念里的多码索引的问题,真心不懂,求大家帮帮忙.....
如果你這樣寫
select * from emp where sal !=any(5000);
則5000的就被排除掉了,明白了?
--=用any <>用all
select * from emp where sal<> all(3000,5000);
--=用any <>用all
select * from emp where sal<> all(3000,5000);
正解
any,all,in很常用