oracle查询笔记(2)

11.在多行子查询中使用all操作符
all表示所有,用在子句中
select ename,sal from emp where sal>all(select sal from emp where deptno=30);
等同于
select ename,sal from emp where sal>(select max(sal) from emp where deptno=30);
12.多行子查询中使用any操作符
select ename,sal from emp where sal>any(select sal from emp where deptno=30);
等同于
select ename,sal from emp where sal>(select min(sal) from emp where deptno=30);
13.多列子查询
select * from emp where (deptno,job)=(select deptno,job from emp where ename='SMITH');
14.oracle分页
1)rownum分页
  select * from
  (select rownum rn,a1.* from emp a1 where rownum<9)
  where rn>4;
  注意:所有的改动都只改里面的查询
2)rowid分页(效率是rownum的3倍)
  select * from emp where rowid in
  (select rid from
  (select rownum rn,rid from
  (select rowid rid,empno from emp order by empno desc)
  where rownum<10)
  where rn>3)
  order by empno desc;
15.如何显示高于自己部门平均工资的员工的信息
select a1.* from emp a1,(select deptno,avg(sal) avgsal from emp group by deptno) a2 where a1.deptno=a2.deptno and a1.sal>a2.avgsal;
16.用查询结果创建新表
create table emp2 (empno,ename,sal) as
select empno,ename,sal from emp;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值