Oracle操作常见的代码分析

数据库 Oracle
Oracle数据库操作过程中会遇到很多问题,为了帮助大家能够解决这些问题,下文中就为大家总结了在实际工作中可能会遇到的问题以及代码。

求部门中哪些人的薪水***

以下是代码片段:select ename,sal from emp join (select max(sal) max_sal, deptno from emp group by deptno) t on (emp.sal = t.max_sal and emp.deptno = t.deptno); -

求部门平均薪水的等级

以下是代码片段:select deptno,avg_sal,grade from (select deptno,avg(sal) avg_sal from emp group by deptno) t join salgrade s on (t.avg_sal between s.losal and s.hisal);

 求部门平均的薪水等级

以下是代码片段:select deptno,avg(grade) from (select deptno,ename,grade from emp join salgrade s on (emp.sal between s.losal and s.hisal)) t group by deptno;

雇员中哪些人是经理人

以下是代码片段:select ename from emp where empno in (select distinct mgr from emp);

不用组函数,求薪水的***值

以下是代码片段:select sal from emp where sal not in (select distinct e1.sal from emp e1 join emp e2 on (e1.sal < e2.sal))

用组函数,求薪水的***值

以下是代码片段:
select max(sal) from emp;

求平均薪水***的部门的部门编号

以下是代码片段:select deptno , avg_sal from (select avg(sal) avg_sal,deptno from emp group by deptno) t where avg_sal = (select max(avg_sal) from (select avg(sal) avg_sal,deptno from emp group by deptno) t);

组函数嵌套的写法

以下是代码片段:select deptno , avg_sal from (select avg(sal) avg_sal,deptno from emp group by deptno) t where avg_sal = (select max(avg(sal)) from emp group by deptno);

求平均薪水***的部门的名称

以下是代码片段:select dname from dept where deptno = ( select deptno from (select avg(sal) avg_sal,deptno from emp group by deptno) t where avg_sal = (select max(avg_sal) from (select avg(sal) avg_sal,deptno from emp group by deptno) t) );

求平均薪水的等级***的部门的部门名称

以下是代码片段:select avg(sal) avg_sal,deptno from emp group by deptno

部门平均薪水

以下是代码片段:select min(avg_sal) from ( select avg(sal) avg_sal,deptno from emp group by deptno )

平均工资的最小值

以下是代码片段:select avg_sal,deptno from (select avg(sal) avg_sal,deptno from emp group by deptno) t where avg_sal = ( select min(avg_sal) from ( select avg(sal) avg_sal,deptno from emp group by deptno ) )

平均工资的最小值及部门编号

以下是代码片段:select t.avg_sal,t.deptno,s.grade from (select avg(sal) avg_sal,deptno from emp group by deptno) t join salgrade s on (t.avg_sal between s.losal and s.hisal) where avg_sal = ( select min(avg_sal) from ( select avg(sal) avg_sal,deptno from emp group by deptno ) )

平均工资的最小值及部门编号和工资等级

以下是代码片段:select d.dname,t.avg_sal,t.deptno,s.grade from (select avg(sal) avg_sal,deptno from emp group by deptno) t join salgrade s on (t.avg_sal between s.losal and s.hisal) join dept d on (t.deptno = d.deptno) where avg_sal = ( select min(avg_sal) from ( select avg(sal) avg_sal,deptno from emp group by deptno ) )

平均工资的最小值及部门编号和工资等级及部门名称

Another 按照题意的写法

以下是代码片段:select t1.deptno,t1.avg_sal,grade,d.dname from ( select deptno,avg_sal,grade from (select deptno,avg(sal) avg_sal from emp group by deptno) t join salgrade s on (t.avg_sal between s.losal and s.hisal) ) t1 join dept d on (t1.deptno = d.deptno) where grade = ( select min(grade) from ( select deptno,avg_sal,grade from (select deptno,avg(sal) avg_sal from emp group by deptno) t join salgrade s on (t.avg_sal between s.losal and s.hisal) ) );

创建视图或者表,如果没有权限

以下是代码片段:conn sys/sys as sysdba;

已连接。

以下是代码片段:grant create table, create view to scott;

本文就为大家介绍这么多,这只是其中的一小部分,还有很多这里没有介绍到,以后还会继续为大家介绍更多的知识,希望能够帮助到大家。

【编辑推荐】

  1. Oracle单行日期函数简介
  2. oracle存储过程中的select语句
  3. Oracle无法启动的处理过程
  4. Oracle数据库效率技巧:避免错误的索引
责任编辑:迎迎 来源: IT专家网
相关推荐

2011-05-20 15:41:11

Oracle代码

2010-04-23 13:29:09

Oracle日期

2011-09-01 10:18:33

初学OracleOracle常见操作

2010-04-15 14:12:20

Oracle 系统操作

2009-11-18 09:52:21

Oracle密码验证

2010-04-16 14:55:12

ORACLE锁

2011-07-19 09:46:00

Oracle数据库递归查询

2023-09-14 22:57:52

2010-05-10 18:46:14

Oracle更改表空间

2010-04-07 10:42:41

Unix操作系统

2009-08-19 10:42:08

C#操作Word表格

2010-04-30 16:58:14

Oracle Raw

2010-04-23 09:58:30

Oracle管理

2019-12-03 09:00:59

Oracle数据库等待事件

2010-10-27 14:52:04

ORACLE数据类型

2013-03-22 17:12:34

Android工程代码结构

2016-12-30 09:00:25

程序gdbcore

2021-05-28 08:52:45

Hive分析函数

2011-05-25 09:45:40

Oracle数据库

2010-04-28 11:09:47

Oracle常见问题
点赞
收藏

51CTO技术栈公众号