<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • Oracle數(shù)據(jù)庫中表的四種連接方式

    時間:2024-07-17 08:46:23 Oracle認(rèn)證 我要投稿
    • 相關(guān)推薦

    Oracle數(shù)據(jù)庫中表的四種連接方式

      Oracle表的連接是指在一個SQL語句中通過表與表之間的關(guān)連,從一個或多個表中檢索相關(guān)的數(shù)據(jù),大體上表與表之間的連接主要可分四種,分別為相等連接,外連接,不等連接和自連接,下文yjbys小編將從幾個典型的例子來分析Oracle表的四種不同連接方式,一起來學(xué)習(xí)吧!

      1. 相等連接

      通過兩個表具有相同意義的列,可以建立相等連接條件。只有連接列上在兩個表中都出現(xiàn)且值相等的行才會出現(xiàn)在查詢結(jié)果中。

      例 查詢員工信息以及對應(yīng)的員工所在的部門信息:

      SELECT * FROM EMP,DEPT;

      SELECT * FROM EMP,DEPT

      WHERE EMP.DEPTNO = DEPT.DEPTNO;

      REM 顯示工資超過2000的員工信息以及對應(yīng)的員工的部門名稱。

      2. 外連接

      對于外連接,Oracle中可以使用“(+)”來表示,9i可以使用LEFT/RIGHT/FULL OUTER JOIN,下面將配合實例一一介紹。除了顯示匹配相等連接條件的信息之外,還顯示無法匹配相等連接條件的某個表的信息。

      外連接采用(+)來識別。

      A) 左條件(+) = 右條件;

      代表除了顯示匹配相等連接條件的信息之外,還顯示右條件所在的表中無法匹配相等連接條件的信息。此時也稱為"右外連接".另一種表示方法是:

      SELECT ... FROM 表1 RIGHT OUTER JOIN 表2 ON 連接條件

      B) 左條件 = 右條件(+);

      代表除了顯示匹配相等連接條件的信息之外,還顯示左條件所在的表中無法匹配相等連接條件的信息。此時也稱為"左外連接".

      SELECT ... FROM 表1 LEFT OUTER JOIN 表2 ON 連接條件

      例 顯示員工信息以及所對應(yīng)的部門信息

      --無法顯示沒有部門的員工信息

      --無法顯示沒有員工的部門信息

      --SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO;

      --直接做相等連接:

      SELECT * FROM EMP JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO;

      REM 顯示員工信息以及所對應(yīng)的部門信息,顯示沒有員工的部門信息

      --SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO(+) = DEPT.DEPTNO;

      SELECT * FROM EMP RIGHT OUTER JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO;

      REM 顯示員工信息以及所對應(yīng)的部門信息,顯示沒有部門的員工信息

      --SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO(+);

      SELECT * FROM EMP LEFT OUTER JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO;

      3. 不等連接

      兩個表中的相關(guān)的兩列進行不等連接,比較符號一般為>,<,...,BETWEEN.. AND..

      REM SALGRADE

      --DESC SALGRADE;

      --SELECT * FROM SALGRADE;

      REM 顯示員工的編號,姓名,工資,以及工資所對應(yīng)的級別。

      SELECT EMPNO,ENAME,SAL,SALGRADE.* FROM SALGRADE,EMP

      WHERE EMP.SAL BETWEEN LOSAL AND HISAL;

      REM 顯示雇員的編號,姓名,工資,工資級別,所在部門的名稱;

      SELECT EMPNO,ENAME,SAL,GRADE,DNAME FROM EMP,DEPT,SALGRADE

      WHERE EMP.DEPTNO = DEPT.DEPTNO AND EMP.SAL BETWEEN LOSAL AND HISAL;

      4. 自連接

      自連接是數(shù)據(jù)庫中經(jīng)常要用的連接方式,使用自連接可以將自身表的一個鏡像當(dāng)作另一個表來對待,從而能夠得到一些特殊的數(shù)據(jù)。下面介紹一下自連接的方法:

      將原表復(fù)制一份作為另一個表,兩表做笛卡兒相等連接。

      例 顯示雇員的編號,名稱,以及該雇員的經(jīng)理名稱

      SELECT WORKER.ENAME,WORKER.MGR,MANAGER.EMPNO,MANAGER.ENAME FROM EMP WORKER,EMP MANAGER

      WHERE WORKER.MGR = MANAGER.EMPNO;

    【Oracle數(shù)據(jù)庫中表的四種連接方式】相關(guān)文章:

    Oracle認(rèn)證:Oracle避免全表掃描方式03-08

    Oracle數(shù)據(jù)庫SELECT語句03-27

    oracle數(shù)據(jù)庫基本語句02-08

    Oracle數(shù)據(jù)庫語句大全12-21

    Oracle數(shù)據(jù)庫認(rèn)證層次03-09

    Oracle數(shù)據(jù)庫基本知識03-31

    ORACLE數(shù)據(jù)庫操作基本語句03-06

    oracle數(shù)據(jù)庫培訓(xùn)課程大綱03-21

    oracle數(shù)據(jù)庫基礎(chǔ)知識01-21

    主站蜘蛛池模板: 久久精品aⅴ无码中文字字幕重口| 日韩人妻精品一区二区三区视频 | 亚洲精品tv久久久久久久久 | 久久99精品久久久久久动态图| 国产精品va久久久久久久| 无码人妻精品一区二区三区在线| 国内精品久久久久国产盗摄| 国产成人精品免费午夜app| 无码人妻精品中文字幕免费| 欧美精品人爱a欧美精品| 99久久精品九九亚洲精品| A级精品国产片在线观看| 亚洲国产精品无码久久久蜜芽 | 国产精品无码久久综合网| 97久久综合精品久久久综合| 亚洲国产精品无码一线岛国| 日韩精品成人a在线观看| 国产精品偷伦视频免费观看了 | 久久精品国产72国产精福利| 一区二区精品在线| 久久国产免费观看精品| 国产精品视频白浆免费视频| 日韩精品中文字幕无码一区| 无码人妻精品一区二| 精品人妻一区二区三区毛片| 国产精品99久久久久久董美香 | 久热这里只有精品12| 亚洲精品一品区二品区三品区| 欧美久久久久久午夜精品| 久久精品亚洲男人的天堂| 国产精品亚洲专区无码WEB | 亚洲国产精品综合久久网络| 精品无码久久久久久久动漫| 国产成人精品午夜福麻豆| 欧美精品1区2区| 日本精品在线视频| 四虎影视884a精品国产四虎| 影视网欧洲精品| 亚洲综合一区二区国产精品| 成人午夜精品亚洲日韩| 97国产视频精品|