易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle中几个典型的关于函数查询_3月5日

一、在不知道部门“SALES”的部门编号的情况下,查出此部门的所有员工姓名。
select e.ename
from emp e
where e.deptno=(select deptno from dept  where dname='SALES');
 
2、查询出月薪高于公司平均月薪的所有员工编号,姓名,所有部门编号,部门名称,上级领导名,以及
他的工资等级。
SELECT
e.empno,e.ename,e.deptno,d.deptno,d.dname,e1.ename,s.grade
from emp e,emp e1,dept d,salgrade s
where e.mgr=e1.empno(+) and e.deptno=d.deptno and e.sal between s.losal and s.hisal and
e.sal>(select avg(sal) from emp);
 
3、查询出与"SCOTT"从事同一工作的所有员工及部门名称。(不包括scott,用<>也可以)
select e.ename,d.dname from emp e,dept d where job=(select job from emp where
ename='SCOTT') and e.deptno=d.deptno and e.ename!='SCOTT';
4、查询出月薪等于部门30中员工的月薪的所有员工姓名和月薪。
select e.ename,e.sal from emp e where e.sal in (select sal from emp  where deptno=30) and  deptno!=30;
5、查出月薪高于部门30工作的所有员工月薪的,员工姓名,部门名。
All(查询语句):>最大值,<最小值
in() 再这个范围内有没有
any()比里面最小的大,比最大的小;
SELECT
e.ename,d.dname
from
emp e,dept d
where e.sal>(select max(sal) from emp where deptno=30) and e.deptno=d.deptno and e.deptno<>30;
6、查询出每个部门名,员工总数,平均工资,平均服务年限。
month_between(sysdate,e.hiredate)/12
//两个时间差多少个月/12是差多少年
select d.dname,count(e.empno),avg(e.sal),avg(months_between(sysdate,e.hiredate)/12)
from emp e,dept d
where e.deptno(+)=d.deptno
group by d.dname;
 


相关文档:

Oracle RAC 启动与关闭


一. 检查共享设备
一般情况下, 存放OCR 和 Voting Disk 的OCFS2 或者raw 都是自动启动的。 如果他们没有启动,RAC 肯定是启动不了的。 
1.1 如果使用ocfs2的,检查ocfs2 状态
/etc/init.d/o2cb status
在挂载之前,/etc/init.d/o2cb st ......

自己写的oracle dbms_sql 函数包例子

create or replace procedure pro_insert_dbms
is
cid number;
cid_DDL number;
selectsql varchar2(1000);
ddlsql    varchar2(1000);
row_count number;
nofrows   integer;
lrowid                & ......

Oracle学习笔记二存储

Oracle学习笔记二存储
                                         ——通过与SqlServer对比学习
存储
   在SqlServer中,我们可以为一个数据库指定一组文件。数据存储在这些文件中。
& ......

Oracle学习笔记三方案


Oracle学习笔记三方案
                       ——通过与SqlServer对比学习
 
方案(schema)
     在Oracle中,我们可以对数据库对象分组,这就是方案(schema),是数据库对象的集合。一个用户一般对应一个schem ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号