国产宅男网站在线|亚洲A级性爱免费视频|亚洲中精品级在线|午夜福利AA毛

  • <dd id="gf5jf"><th id="gf5jf"></th></dd>

    <cite id="gf5jf"><label id="gf5jf"></label></cite>
  • <div id="gf5jf"><listing id="gf5jf"></listing></div>
    學(xué)習(xí)啦>學(xué)習(xí)英語>專業(yè)英語>計(jì)算機(jī)英語>

    數(shù)據(jù)庫中join的用法

    時(shí)間: 長思709 分享

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

      數(shù)據(jù)庫中join的用法的用法如下:

      一、join的用法

      內(nèi)連接、外連接

      示例用表:

      雇員表(Employee)

      LastNameDepartmentID

      Rafferty31

      Jones33

      Steinberg33

      Robinson34

      Smith34

      JasperNULL

      部門表(Department)

      DepartmentID部門

      31銷售部

      33工程部

      34書記

      35市場部

     ?。?、內(nèi)連接:相等連接、自然連接、交叉連接

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

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

      等價(jià)于:

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

      注:當(dāng)DepartmentID不匹配,就不會往結(jié)果表中生成任何數(shù)據(jù)。

      2)、相等連接

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

      SELECT * from employee join department using (DepartmentID)

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

      3)、自然連接

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

      自然連接得到的結(jié)果表中,兩表中名稱相同的列只出現(xiàn)一次.

      select * from employee natural join department

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

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

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

     ?。?交叉連接(又稱笛卡爾連接)

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

      顯示連接:

      select * from employee cross join department

      等價(jià)于

      隱式連接:

      select * from employee,department

     ?。病⑼膺B接

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

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

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

      如:

      Jaspernull null null

      Jones3333工程部

      Rafferty3131銷售部

      Robinson3434書記

      Smith3434書記

      Steinberg3333工程部

      若A表對應(yīng)B表中有多行,則左表會復(fù)制和右表匹配行一樣的數(shù)量,并組合生成連接結(jié)果。

      如: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

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

      和上面等價(jià)的實(shí)例:

      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 不支持右連接。

    數(shù)據(jù)庫中join的用法

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

    精選文章

    • 數(shù)據(jù)庫中in的用法
      數(shù)據(jù)庫中in的用法

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

    • 數(shù)據(jù)庫中exists語句的用法
      數(shù)據(jù)庫中exists語句的用法

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

    • 數(shù)據(jù)庫中exists的用法
      數(shù)據(jù)庫中exists的用法

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

    • 數(shù)據(jù)庫中drop的用法
      數(shù)據(jù)庫中drop的用法

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

    543193