<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    斷點

    每天進步一點點!
    posts - 174, comments - 56, trackbacks - 0, articles - 21

    SQL組合查詢例子

    Posted on 2010-07-06 23:25 斷點 閱讀(538) 評論(0)  編輯  收藏 所屬分類: Oracle DBA

    select e1.ename,e2.ename from emp e1 join emp e2 on (e1.mgr=e2.empno); --自連接,從e2中取出e1的經理人。
    select ename,dname from emp e left join dept d on (e.deptno=d.deptno);   --左外連接
    select ename,dname from emp e right outer join dept d on (e.deptno=d.deptno);   --右外連接
    select ename,dname from emp e full join dept d on (e.deptno=d.deptno);    --全連接


    --求部門中哪些人的薪水最高
    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 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 distinct sal from emp where sal not in
    (select distinct e1.sal from emp e1 join emp e2 on (e1.sal < e2.sal));


    --求平均薪水最高的部門的部門編號。嵌套的組函數。
    select deptno,avg_sal from
    (select avg(sal) avg_sal,deptno from emp group by deptno)
    where avg_sal =
    (select max(avg(sal)),deptno from emp group by deptno;

     

    --求平均薪水的等級最低的部門的部門名稱。
    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,grade,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;

    create view v$_dept_avg_sal_info as
    select deptno,grade,avg_sal from
      (select deptno,grade,avg(sal) avg_sal from emp group by deptno) t
       join salgrade s on (t.avg_sal between s.losal and s.hisal);

    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
    )

    -- 比普通員工的最高薪水還要高的經理人名稱。
    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 null)
    )

     

    主站蜘蛛池模板: 亚洲色成人WWW永久在线观看| 最近的2019免费中文字幕| 手机看黄av免费网址| 久久精品九九亚洲精品| 久久九九AV免费精品| 亚洲欧洲日韩国产综合在线二区| 亚洲冬月枫中文字幕在线看| 精品久久久久久亚洲综合网| 国产在线一区二区综合免费视频| 最近免费中文字幕大全视频| 天堂亚洲国产中文在线| 在线观看免费a∨网站| 国产成人亚洲精品电影| 亚洲精品在线视频| 人妻在线日韩免费视频| 精品亚洲成a人片在线观看| 午夜性色一区二区三区免费不卡视频| 亚洲国产成人久久一区久久| 亚洲国产免费综合| 啦啦啦www免费视频| 亚洲成人在线电影| 曰曰鲁夜夜免费播放视频| 亚洲精品蜜夜内射| 亚洲国产精品日韩| 无码一区二区三区免费| 亚洲精品美女久久久久9999| 成人毛片18岁女人毛片免费看| 亚洲区小说区图片区QVOD| 日韩欧美亚洲国产精品字幕久久久| 国产精品冒白浆免费视频| 久久精品夜色国产亚洲av| 国产精品国产亚洲区艳妇糸列短篇| 一级毛片在线免费观看| 亚洲xxxx18| 亚洲真人无码永久在线| 亚洲精品免费在线| 深夜A级毛片视频免费| 免费观看一级毛片| a级日本高清免费看| 伊人久久亚洲综合| 免费一级特黄特色大片|