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

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

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

    隨筆-28  評論-15  文章-81  trackbacks-0

    一般的相等連接:
    select * from a, b where a.id = b.id;
    這個就屬于內(nèi)連接。

    對于外連接:
    Oracle中可以使用“(+) ”來表示,9i可以使用LEFT/RIGHT/FULL OUTER JOIN

    LEFT OUTER JOIN:左外關(guān)聯(lián)
    SELECT e.last_name, e.department_id, d.department_name
    FROM employees e
    LEFT OUTER JOIN departments d
    ON (e.department_id = d.department_id);
    等價于
    SELECT e.last_name, e.department_id, d.department_name
    FROM employees e, departments d
    WHERE e.department_id=d.department_id(+)
    結(jié)果為:所有員工及對應部門的記錄,包括沒有對應部門編號department_id的員工記錄。

    RIGHT OUTER JOIN:右外關(guān)聯(lián)
    SELECT e.last_name, e.department_id, d.department_name
    FROM employees e
    RIGHT OUTER JOIN departments d
    ON (e.department_id = d.department_id);
    等價于
    SELECT e.last_name, e.department_id, d.department_name
    FROM employees e, departments d
    WHERE e.department_id(+)=d.department_id
    結(jié)果為:所有員工及對應部門的記錄,包括沒有任何員工的部門記錄。

    FULL OUTER JOIN:全外關(guān)聯(lián)
    SELECT e.last_name, e.department_id, d.department_name
    FROM employees e
    FULL OUTER JOIN departments d
    ON (e.department_id = d.department_id);
    結(jié)果為:所有員工及對應部門的記錄,包括沒有對應部門編號department_id的員工記錄和沒有任何員工的部門記錄。

    ORACLE8i是不直接支持完全外連接的語法,也就是說不能在左右兩個表上同時加上(+),下面是在ORACLE8i可以參考的完全外連接語法
    select t1.id,t2.id from table1 t1,table t2 where t1.id=t2.id(+)
    union
    select t1.id,t2.id from table1 t1,table t2 where t1.id(+)=t2.id

    連接類型 定義 圖示 例子
    內(nèi)連接 只連接匹配的行 select A.c1,B.c2 from A join B on A.c3 = B.c3;
    左外連接 包含左邊表的全部行(不管右邊的表中是否存在與它們匹配的行)以及右邊表中全部匹配的行 select A.c1,B.c2 from A left join B on A.c3 = B.c3;
    右外連接 包含右邊表的全部行(不管左邊的表中是否存在與它們匹配的行)以及左邊表中全部匹配的行 select A.c1,B.c2 from A right join B on A.c3 = B.c3;
    全外連接 包含左、右兩個表的全部行,不管在另一邊的表中是否存在與它們匹配的行 select A.c1,B.c2 from A full join B on A.c3 = B.c3;
    (theta)連接 使用等值以外的條件來匹配左、右兩個表中的行 select A.c1,B.c2 from A join B on A.c3 != B.c3;
    交叉連接 生成笛卡爾積——它不使用任何匹配或者選取條件,而是直接將一個數(shù)據(jù)源中的每個行與另一個數(shù)據(jù)源的每個行一一匹配   select A.c1,B.c2 from A,B;
    posted on 2008-06-04 11:05 譚明 閱讀(248) 評論(0)  編輯  收藏 所屬分類: Oracle
    主站蜘蛛池模板: 亚洲无码一区二区三区| 97超高清在线观看免费视频| 免费a级毛片无码av| 免费看一区二区三区四区| 亚洲1234区乱码| 亚洲精品尤物yw在线影院 | 亚洲A丁香五香天堂网| 久久久久国产精品免费免费不卡 | 久久国产乱子免费精品| 中文字幕亚洲男人的天堂网络| 免费成人午夜视频| 最近免费中文字幕mv电影| 青娱乐在线免费观看视频| 久久精品国产亚洲AV嫖农村妇女 | 亚洲精品~无码抽插| 国产精品无码免费播放| 91视频免费观看高清观看完整| 麻豆狠色伊人亚洲综合网站 | 一区视频免费观看| youjizz亚洲| 久久亚洲精品成人| 亚洲AV无码一区二区三区国产| 69免费视频大片| 久久久久久久久久免免费精品| 亚洲精品无码成人| 亚洲爆乳精品无码一区二区三区| 免费观看的a级毛片的网站| 午夜影院免费观看| WWW免费视频在线观看播放 | 久久精品女人天堂AV免费观看| 伊人久久大香线蕉免费视频| 亚洲.国产.欧美一区二区三区| 亚洲综合激情另类小说区| 亚洲午夜国产精品无码| 亚洲av无码专区在线观看素人| 毛片免费视频在线观看| 在线免费观看你懂的| 国产羞羞的视频在线观看免费| xxxx日本在线播放免费不卡| 亚洲av片在线观看| 国产亚洲玖玖玖在线观看|