Oracle SQL部分练习题
select * from dept where deptno in(select distinct deptno from emp);
select * from dept where deptno in (select deptno from emp group by deptno having count(deptno)>=1);
select * from dept a where exists (select null from emp b where a.deptno=b.deptno);
select ename from emp where sal>(select sal from emp where ename='SMITH');
select e.ename,p.ename from emp e,emp p where p.empno(+)=e.mgr;
select p.ename,e.ename from emp p left join emp e on e.empno=p.mgr;
Execution Plan
----------------------------------------------------------
Plan hash value: 2341341676 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 14 | 280 | 7 (15)| 00:00:01 |
|* 1 | HASH JOIN OUTER | | 14 | 280 | 7 (15)| 00:00:01 |
| 2 | TABLE ACCESS FULL| EMP | 14 | 140 | 3 (0)| 00:00:01 |
| 3 | TABLE ACCESS FULL| EMP | 14 | 140 | 3 (0)| 00:00:01 |
--------------------------------------------------------------------------- Predicate Information (identified by operation id):
--------------------------------------------------- 1 - access("E"."EMPNO"(+)="P"."MGR") Statistics
----------------------------------------------------------
1 recursive calls
0 db block gets
15 consistent gets
0 physical reads
0 redo size
823 bytes sent via SQL*Net to client
523 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
14 rows processed
select e.ename,(select ename from emp p where p.empno=e.mgr)as BoosName from emp e;
Execution Plan
----------------------------------------------------------
Plan hash value: 4000517069 --------------------------------------------------------------------------------
------ | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time
| --------------------------------------------------------------------------------
------ | 0 | SELECT STATEMENT | | 14 | 140 | 3 (0)| 00:0
0:01 | | 1 | TABLE ACCESS BY INDEX ROWID| EMP | 1 | 10 | 1 (0)| 00:0
0:01 | |* 2 | INDEX UNIQUE SCAN | PK_EMP | 1 | | 0 (0)| 00:0
0:01 | | 3 | TABLE ACCESS FULL | EMP | 14 | 140 | 3 (0)| 00:0
0:01 | --------------------------------------------------------------------------------
------ Predicate Information (identified by operation id):
--------------------------------------------------- 2 - access("P"."EMPNO"=:B1) Statistics
----------------------------------------------------------
1 recursive calls
0 db block gets
17 consistent gets
0 physical reads
0 redo size
849 bytes sent via SQL*Net to client
523 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
14 rows processed
a.
select p.ename from emp e,emp p where e.empno=p.mgr and p.hiredate<e.hiredate;
select e.ename from emp e where e.hiredate<(select hiredate from emp p where p.empno=e.mgr);
select a.dname,b.ename from dept a,emp b where a.deptno=b.deptno(+);
select a.dname,b.ename from dept a left join emp b on a.deptno=b.deptno
select b.ename,a.dname from dept a,emp b where a.deptno=b.deptno and b.job='CLERK';
select min(sal)as minsal,job from emp group by job having min(sal)>1500;
select ename from emp where deptno=(select deptno from dept where dname='SALES');
select ename from emp where sal>(select avg(sal) from emp);
select ename from emp where job=(select job from emp where ename='SCOTT');
select ename,sal from emp where sal in (select sal from emp where deptno=30);
select ename,sal from emp where sal > (select max(sal) from emp where deptno=30);
select a.deptno,a.dname,a.loc,b.ss from dept a,(select deptno,count(ename) ss from emp group by deptno) b
where a.deptno=b.deptno;
select a.ename,b.dname,a.sal from emp a,dept b where a.deptno=b.deptno(+);
select a.ename,b.ename,a.job,b.job,a.deptno,b.deptno from emp a,emp b
where a.job=b.job and a.deptno<>b.deptno;
select a.deptno,a.dname,a.loc,nvl(b.ss,0) from dept a,
(select deptno,count(ename) ss from emp group by deptno) b where a.deptno=b.deptno(+);
select a.deptno,dname,loc,count(empno) ss from dept a,emp b where a.deptno=b.deptno(+)
group by a.deptno,a.dname,a.loc;
select job,min(sal) as minjobsal from emp group by job;
select deptno,min(sal) ss from emp where job='MANAGER' group by deptno;
select ename,(sal*12+nvl(comm,0)) as nianxin from emp order by nianxin;
select ename,a.tt from (select rownum tt,ename,(sal*12+nvl(comm,0)) as nianxin from emp)a where a.tt=4;
select * from (select ename,sal,rank()over(order by sal desc)as nn from emp) where nn=4;
Oracle SQL部分练习题的更多相关文章
- ORACLE SQL语句练习题
--1:选择部门30中的所有员工select * from emp where deptno=30--2:列出所有办事员(clerk) 的姓名.编号和部门编号select empno,ename,de ...
- Oracle SQL Developer 连接 MySQL
1. 在ORACLE官网下载Oracle SQL Developer第三方数据库驱动 下载页面:http://www.oracle.com/technetwork/developer-tools/sq ...
- Oracle sql连接
inner-join left-outer-join right-outer-join full- ...
- 解决Oracle SQL Developer无法连接远程服务器的问题
在使用Oracle SQL Developer连接远程服务器的时候,出现如下的错误 在服务器本地是可以正常连接的.这个让人想起来,跟SQL Server的一些设计有些类似,服务器估计默认只在本地监听, ...
- Oracle sql语句执行顺序
sql语法的分析是从右到左 一.sql语句的执行步骤: 1)词法分析,词法分析阶段是编译过程的第一个阶段.这个阶段的任务是从左到右一个字符一个字符地读入源程序,即对构成源程序的字符流进行扫描然后根据构 ...
- Oracle SQL explain/execution Plan
From http://blog.csdn.net/wujiandao/article/details/6621073 1. Four ways to get execution plan(anyti ...
- 处理 Oracle SQL in 超过1000 的解决方案
处理oracle sql 语句in子句中(where id in (1, 2, ..., 1000, 1001)),如果子句中超过1000项就会报错.这主要是oracle考虑性能问题做的限制.如果要解 ...
- Oracle sql develpoer
Oracle SQL Developer是针对Oracle数据库的交互式开发环境(IDE) Oracle SQL Developer简化了Oracle数据库的开发和管理. SQL Develo ...
- Oracle SQL Developer 添加SQLServer 和Sybase 连接
来源于: http://blog.csdn.net/kk185800961/article/details/8602306 1. 开始只有Oracle 和access 连接 2. 打开Oracle S ...
随机推荐
- 安装VS2013
安装VS2013, 之前就有VS2010,安装了一个多小时,纠结,下面是截图. 1.安装 2.登录,之前就有账号了 3.这就是VS2013了. 4.测试 5通 ...
- HBase集成(准备篇)
HBase与Hadoop各版本对照表:http://hbase.apache.org/book.html#configuration Hadoop 2.7.1+ 对应HBase 1.2.X,1.3.X ...
- Week3_代码复审
软件工程师的成长 一口气看完了十多篇的博客,心里的感觉五味陈杂.既有对未来道路的憧憬,也有对自己目前水平的无力感,与那些在这个领域打拼十几年甚至几十年的前辈相比,我不过也就是刚刚迈过行业门槛一条腿而已 ...
- Win2019 preview 版本的安装过程
1. 加入 windows insider 协议 登录自己的账号 同意 insder 协议. 然后 https://www.microsoft.com/en-us/software-download/ ...
- Memcache 监控
本文介绍zabbix.nagios.cacti对Memcache的监控 一:zabbix企业应用之固定端口监控memcache 一.在客户端 1.到/usr/loca/zabbix/conf/zabb ...
- DataGridView列标题居中,内容居中
//列标题居中 dataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleC ...
- libev学习之ev_run
好吧,神马都init好了,loop毕竟是个环呐,在哪跑起来呢,ok,他是ev_run的工作: int ev_run (EV_P_ int flags) { #if EV_FEATURE_API ++l ...
- github如何添加新的分支
需求:甲建立分支分给乙步骤:在甲创建的项目仓库里边点右上角的按钮 就可以通过名字搜索了. 在乙的右上角 再选中Repositories就可以看到所有的 存储库 了
- linux(1):VMware虚拟软件下安装centos6.8
前言:Linux是一种自由和开放源代码的类UNIX操作系统,继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统.本人学习Linux已经有一段时间了,从一开始的小白到现在的略有所悟 ...
- 使用swagger2配置springboot时出现的问题
这个问题踩了几次坑了,这次又遇到了,不记录一下看来是不长记性了: 测试普通的增删改查的时候,发现删除和查询是对的,可是增加和更新却数据绑定不到controller的参数上面去. 因为是自定义的实体类, ...