美文网首页
Oracle笔记5

Oracle笔记5

作者: 菁华浮英梦 | 来源:发表于2018-07-17 22:24 被阅读230次

21:--平均薪水最高的部门的部门编号(优化):

    selectdeptno,avg_sal from

        (select avg(sal) avg_sal,deptno from emp group by deptno)

    where avg_sal =

        (select max(avg(sal)) from emp group by demtno)

22:--平均薪水最低的部门的部门名称:

    1、求平均薪水:

        select avg(sal) from emp;

    2、平均薪水的等级:

        select deptno,grade.avg_sal 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)

    3、求最低的等级:

        select min(grade) from

        (

            select deptno,grade.avg_sal 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)

        )

    4、select dname,t1.deptno,grade,avg_sal from

        (

        select deptno,grade.avg_sal 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 on (t1.deptno = dept.deptno)

       where t1.grade =

       (

         select min(grade) from

         (

         select deptno,grade,avg_sal 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)

         )

       )

23:--创建视图:

sys账户grant table,create view to scott;

    create view v$dept_avg_sal_info as

    select deptno,grade,avg_sal 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 * from v$_dept_avg_sal_info;

    --改写22中的方法:

    select dname,t1.deptno,grade,avg_sal from

        v$_dept_avg_sal_info t1

       join dept on (t1.deptno = dept.deptno)

       where t1.grade =

       (

         select min(grade) from v$_dept_avg_sal_info

       )

24:--求部门经理人中平均薪水最低的名称(思考题)

   --求比普通员工的薪水还要高的经理人

     1、select ename from emp

         where empno in (select distinct mgr from emp where mgr is not null)

         and sal >

         (

         select max(sal) from emp where empno not in

           (select distinct mgr from emp where mgr is not full)

          )

25:(到此之前的sql语句除了单行语句全部掌握!)

    --面试题:比较效率(第一个高):

    select * from emp where deptno = 10 and ename like '%A%';

    select * from emp where ename like '%A%' and deptno = 10;

    到此select语句讲完,接下来的是DML语句。数据库四大语句!

    --DML语句:insert,delete,update,create

        (Oracle逻辑结构)

    --创建用户:-先必须用超级管理员身份登陆,conn sys/bjsxt as sysdba;

                -backup scott

                 exp(备份成为dmp文件然后可以导入数据给新用户)

                -create user

                 create user mgy identified by mgy default tablespace users quota(配额) 10M on users;

                -给用户分配权限

                 grant create session,create table,create view to mgy;//授权

                -import the data

                 imp(倒入数据)

    --DML语句:desc dept;

               insert into dept values (50,'game','bj');

                   备份数据办法:

                   rollback;

                   create table emp2 as select * from emp;

               insert into dept2 (deptno,dname) values (60,'games2');

               insert into dept2 select * from dept;

               insert有三种形式:按字段顺序挨个往里差;

                                    指定某些字段往里差,不差的值默认为空;

                                    把子查询拿过来的数据挨个差进去,前提是子查询拿出来的东西必须和这张表的结构一样。

相关文章

  • Oracle笔记5

    21:--平均薪水最高的部门的部门编号(优化): selectdeptno,avg_sal from ...

  • 数据库

    DB Oracle Debian7安装Oracle 11g 入门教程 Oracle笔记 MySQL debian安...

  • Oracle笔记(二)

    Oracle笔记系列这几篇是来自一位老师的笔记,分享给大家放在简书上,主要方便自己时常复习,还有学习Oracle的...

  • Oracle笔记(三)

    Oracle笔记系列这几篇是来自一位老师的笔记,分享给大家放在简书上,主要方便自己时常复习,还有学习Oracle的...

  • Oracle笔记(四)

    Oracle笔记系列这几篇是来自一位老师的笔记,分享给大家放在简书上,主要方便自己时常复习,还有学习Oracle的...

  • Oracle笔记(一)

    Oracle笔记系列这几篇是来自一位老师的笔记,分享给大家放在简书上,主要方便自己时常复习,还有学习Oracle的...

  • Oracle笔记

    Oracle 视频里的三天课程简单笔记

  • 2020-03-17

    spark学习笔记centos安装Oracle VirtualBox: Centos安装Vagrant

  • 相老师的OCP教程 1-5课文字版

    甲骨论相老师01课笔记 Oracle的学习软件:sqldeveloper。学习Oracle时一定要注重原理的学习,...

  • Oracle cursor学习笔记

    @[toc]最近在看《基于oracle的sql优化》一书,并做了笔记 一、oracle库缓存 1.1、库缓存简介 ...

网友评论

      本文标题:Oracle笔记5

      本文链接:https://www.haomeiwen.com/subject/clcnpftx.html