精品丰满熟女一区二区三区_五月天亚洲欧美综合网_亚洲青青青在线观看_国产一区二区精选

  • <menu id="29e66"></menu>

    <bdo id="29e66"><mark id="29e66"><legend id="29e66"></legend></mark></bdo>

  • <pre id="29e66"><tt id="29e66"><rt id="29e66"></rt></tt></pre>

      <label id="29e66"></label><address id="29e66"><mark id="29e66"><strike id="29e66"></strike></mark></address>
      學習啦>學習英語>專業(yè)英語>計算機英語>

      數據庫中join的用法

      時間: 長思709 分享

        數據庫中join的用法的用法你知道嗎?下面小編就跟你們詳細介紹下數據庫中join的用法的用法,希望對你們有用。

        數據庫中join的用法的用法如下:

        一、join的用法

        內連接、外連接

        示例用表:

        雇員表(Employee)

        LastNameDepartmentID

        Rafferty31

        Jones33

        Steinberg33

        Robinson34

        Smith34

        JasperNULL

        部門表(Department)

        DepartmentID部門

        31銷售部

        33工程部

        34書記

        35市場部

        1、內連接:相等連接、自然連接、交叉連接

        1)、顯式的內連接與隱式連接(inner join == join )

        顯示連接:SELECT * from employee join department on employee.DepartmentID = department.DepartmentID

        等價于:

        隱式連接:SELECT * from employee,department WHERE employee.DepartmentID = department.DepartmentID

        注:當DepartmentID不匹配,就不會往結果表中生成任何數據。

        2)、相等連接

        提供了一種可選的簡短符號去表達相等連接,它使用 USING 關鍵字。

        SELECT * from employee join department using (DepartmentID)

        注:與顯式連接不同在于:DepartmentID只顯示一列

        3)、自然連接

        比相等連接的進一步特例化。兩表做自然連接時,兩表中的所有名稱相同的列都將被比較,這是隱式的。

        自然連接得到的結果表中,兩表中名稱相同的列只出現一次.

        select * from employee natural join department

        注:在 Oracle 里用 JOIN USING 或 NATURAL JOIN 時,如果兩表共有的列的名稱前加上某表名作為前綴,

        則會報編譯錯誤: "ORA-25154: column part of USING clause cannot have qualifier"

        或 "ORA-25155: column used in NATURAL join cannot have qualifier".

        4)交叉連接(又稱笛卡爾連接)

        如果 A 和 B 是兩個集合,它們的交叉連接就記為: A × B.

        顯示連接:

        select * from employee cross join department

        等價于

        隱式連接:

        select * from employee,department

        2、外連接

        并不要求連接的兩表的每一條記錄在對方表中都一條匹配的記錄。

        1)左連接(left outer join == left join)

        若A表與B表左連接,A表對就的B表沒有匹配,連接操作也會返回一條記錄,對應值為NULL。

        如:

        Jaspernull null null

        Jones3333工程部

        Rafferty3131銷售部

        Robinson3434書記

        Smith3434書記

        Steinberg3333工程部

        若A表對應B表中有多行,則左表會復制和右表匹配行一樣的數量,并組合生成連接結果。

        如:select * from department left join employee on employee.departmentId = department.departmentId

        31銷售部Rafferty31

        33工程部Jones33

        33工程部Steinberg33

        34書記Robinson34

        34書記Smith34

        35市場部nullnull

        2)、右連接(right outer join == right join)

        與左連接同(略)

        3)、全連接(full outer join ==full join)

        是左右外連接的并集. 連接表包含被連接的表的所有記錄, 如果缺少匹配的記錄, 即以 NULL 填充。

        select * from employee full outer join department on employee.departmentId = department.departmentId

        注:一些數據庫系統(tǒng)(如 MySQL)并不直接支持全連接, 但它們可以通過左右外連接的并集(參: union)來模擬實現.

        和上面等價的實例:

        select * from employee left join department on employee.departmentId = department.departmentId

        union all

        select * from employee right join department on employee.departmentId = department.departmentId

        注:SQLite 不支持右連接。

      數據庫中join的用法

      數據庫中join的用法的用法你知道嗎?下面小編就跟你們詳細介紹下數據庫中join的用法的用法,希望對你們有用。 數據庫中join的用法的用法如下: 一、join的用法 內連接、外連接 示例用表: 雇員表(Employee) LastNameDepartmentID Raffer
      推薦度:
      點擊下載文檔文檔為doc格式

      精選文章

      • 數據庫中in的用法
        數據庫中in的用法

        數據庫中in的用法的用法你知道嗎?下面小編就跟你們詳細介紹下數據庫中in的用法的用法,希望對你們有用。 數據庫中in的用法的用法如下: IN:確定給定

      • 數據庫中exists語句的用法
        數據庫中exists語句的用法

        數據庫中exists語句的用法的用法你知道嗎?下面小編就跟你們詳細介紹下數據庫中exists語句的用法的用法,希望對你們有用。 數據庫中exists語句的用法的用

      • 數據庫中exists的用法
        數據庫中exists的用法

        數據庫中exists的用法的用法你知道嗎?下面小編就跟你們詳細介紹下數據庫中exists的用法的用法,希望對你們有用。 數據庫中exists的用法的用法如下: e

      • 數據庫中drop的用法
        數據庫中drop的用法

        數據庫中drop的用法的用法你知道嗎?下面小編就跟你們詳細介紹下數據庫中drop的用法的用法,希望對你們有用。 數據庫中drop的用法的用法如下: 由于數

      543193