亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Oracle高級查詢

  • 常用分組函數

    avg

    sum

    min

    max

    count

    wm_concat:行轉列

    查看全部
  • 分組函數概念及其使用

    查看全部
  • 如何用mysql來解決這個最后一個的聯系
    查看全部
    0 采集 收起 來源:練習

    2019-03-24

  • rollup(deptno,job)
    查看全部
  • having用在分組函數中,用于過濾
    查看全部
  • oracle的分組函數會過濾空值,建議?NVL賦值
    查看全部
    0 采集 收起 來源:使用分組函數3

    2019-03-22

  • wm_concat行轉列
    查看全部
    0 采集 收起 來源:使用分組函數2

    2019-03-22

  • 當一個結果有兩種解法,就是實現一個功能可以是多種sql語句時,可以通過執行計劃查看哪個的效率更高 -----

    1. explain plan for ?sql語句;

    2. select * from table (dbm_xplan.display);


    查看全部
    0 采集 收起 來源:案例2

    2019-03-17

  • 示例一

    rownum 只能使用<,<=,不能使用> , >=

    行號的生成機制:oracle數據庫是一個行式數據庫(即:取了第一行才能取第二行,取了第二行才能取第三行,以此類推)

    oracle實現分頁查詢是通過嵌套子查詢實現的

    --分頁查詢,先排序,每頁4行,查詢第二頁(就是行號從5~8)

    select r,empno,sal

    from (select rownum r,empno,ename,sal

    from (select rownum,empno,ename,sal from emp order by sal desc) e1

    where rownum<=8) e2

    where r>=5;


    查看全部
    0 采集 收起 來源:案例1

    2019-03-17

  • 多行子查詢中的null值問題

    One of the values returned by the inner query is a null value,and hence the entire query returns no rows.The reason is that all conditions that compare a null value result in a null.So whenever null values are likely to be part of the results set of a subquery,do not use the not in operator.The NOT IN operator is quivalent to <>ALL.

    Notice that the null value as part of the results set of a subquery is not a problem if you use the IN operator.The IN operator is equivalent to =ANY.For example,to display the employees who have subordinates,use the following SQL statement:

    SELECT * FROM emp WHERE empno IN (SELECT mgr FROM EMP);

    Alternatively,a WHERE clause can be included in the subquery to display all employees who do not have any subordinates:

    SELECT * FROM emp WHERE empno NOT IN (SELECT mgr FROM emp WHERE mgr IS NOT NULL);

    -----如果多行子查詢出現null值,再使用not in進行多行子查詢,將查不到任何記錄,因為此時相當于不等于所有(<>all),所以在子查詢中必須先在where條件中,把null值過濾掉,再使用not in

    查看全部
  • 子查詢注意的10個問題

    子查詢語法中的小括號

    子查詢的書寫風格

    可以使用子查詢的位置:where,select,select,having,from ?(在select后的子查詢必須是一個單行子查詢---即,子查詢返回的結果集只有一條記錄)

    不可以使用子查詢的位置:group by

    強調:from 后面的子查詢

    主查詢和子查詢可以不是同一張表

    一般不在子查詢中,使用排序;但在Top-N分析問題中,必須對子查詢排序

    一般先執行子查詢,再執行主查詢;但相關子查詢例外

    單行子查詢只能使用單行操作符;多行子查詢只能使用多行操作符

    注意:子查詢中是null值問題


    查看全部
  • 子查詢概述

    子查詢使用

    子查詢類型

    查看全部
  • 自連接:當顯示結果需要通過自連接實現,則需要給表一個別名,虛擬兩張表進行連接查詢。

    自連接優點:顯示結果清晰明了 ? ? 缺點:多表連接查詢會產生笛卡爾積

    層次查詢可以解決自連接查詢產生的問題

    層次查詢本質是一個單表查詢

    相鄰兩層的上一層的員工號,用關鍵字prior實現

    connect by(connect by表示連接) 上一層的員工號=老板號(條件)

    start with empno=7839; ---從哪個節點開始找,此處可以從任意一個節點開始

    level為層次查詢的偽列,要顯示層次查詢中的數據,必須顯示加上level關鍵字

    總語句:

    select level,empno,ename,sal,mgr from emp

    connect by prior empno=mgr start with empno=7839;

    查看全部
  • 笛卡爾集=列數相加,行數相乘?

    目的:找到連接條件

    查看全部
  • group by語句的增強

    group by語句的增強用在報表中會非常有用

    select deptno,job,sum(sal) from emp group by rollup(deptno,job);

    https://img1.sycdn.imooc.com//5c867ab10001623005710488.jpg

    查看全部

舉報

0/150
提交
取消
課程須知
小伙伴們,學習本課程前需要掌握Oracle的語法基礎,并且對Oracle的函數有所了解。如不了解這兩部分內容,請移步《Oracle數據庫開發必備利器之SQL基礎》和《Oracle數據庫開發利器之函數》兩門教程。
老師告訴你能學到什么?
1、掌握分組查詢 2、掌握多表查詢 3、掌握子查詢

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!