欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解析:內(nèi)聯(lián),左外聯(lián),右外聯(lián),全連接,交叉連接的區(qū)別

 更新時(shí)間:2013年07月03日 10:23:10   作者:  
本篇文章是對(duì)內(nèi)聯(lián),左外聯(lián),右外聯(lián),全連接,交叉連接的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下

連接分為:內(nèi)連接、外連接、交叉連接
一、內(nèi)連接——最常用
定義:
僅將兩個(gè)表中滿足連接條件的行組合起來作為結(jié)果集。
在內(nèi)連接中,只有在兩個(gè)表中匹配的行才能在結(jié)果集中出現(xiàn)
關(guān)鍵詞:INNER JOIN
格式:SELECT 列名表 FROM 表名1 [INNER] JOIN 表名2 ON或WHERE 條件表達(dá)式
說明:
(1)列名表中的列名可以出自后面的兩個(gè)表,但如果兩個(gè)表中有同名列,應(yīng)在列名前標(biāo)明出處,格式為:表名.列名
(2)若連接的兩個(gè)表名字太長(zhǎng),可以為它們起個(gè)別名。 格式為:表名 AS 別名
(3)INNER是默認(rèn)方式,可以省略
eg:
select *
from   t_institution i
inner join t_teller t
on i.inst_no = t.inst_no
where i.inst_no = "5801"
其中inner可以省略。
等價(jià)于早期的連接語法
select *
from t_institution i, t_teller t
where i.inst_no = t.inst_no
and i.inst_no = "5801"

二、外連接
1、左(外)連接
定義:在內(nèi)連接的基礎(chǔ)上,還包含左表中所有不符合條件的數(shù)據(jù)行,并在其中的右表列填寫NULL
關(guān)鍵字:LEFT JOIN
eg:
select *
from   t_institution i
left outer join t_teller t
on i.inst_no = t.inst_no
其中outer可以省略。
注意:
當(dāng)在內(nèi)連接查詢中加入條件是,無論是將它加入到j(luò)oin子句,還是加入到where子句,其效果是完全一樣的,但對(duì)于外連接情況就不同了。當(dāng)把條件加入到 join子句時(shí),SQL Server、Informix會(huì)返回外連接表的全部行,然后使用指定的條件返回第二個(gè)表的行。如果將條件放到where子句 中,SQL Server將會(huì)首先進(jìn)行連接操作,然后使用where子句對(duì)連接后的行進(jìn)行篩選。下面的兩個(gè)查詢展示了條件放置位子對(duì)執(zhí)行結(jié)果的影響:
條件在join子句
select *
from   t_institution i
left outer join t_teller t
on i.inst_no = t.inst_no
and i.inst_no = “5801”

結(jié)果是:
inst_no     inst_name             inst_no     teller_no   teller_name
5801        天河區(qū)                5801        0001        tom
5801        天河區(qū)                5801        0002        david
5802        越秀區(qū)
5803        白云區(qū)

條件在where子句
select *
from   t_institution i
left outer join t_teller t
on i.inst_no = t.inst_no
where i.inst_no = “5801”

結(jié)果是:
inst_no     inst_name             inst_no     teller_no   teller_name
5801           天河區(qū)                    5801          0001               tom
5801           天河區(qū)                    5801          0002              david

2、右(外)連接
定義:
在內(nèi)連接的基礎(chǔ)上,還包含右表中所有不符合條件的數(shù)據(jù)行,并在其中的左表列填寫NULL
關(guān)鍵字:RIGHT JOIN
3、完全連接
定義:
在內(nèi)連接的基礎(chǔ)上,還包含兩個(gè)表中所有不符合條件的數(shù)據(jù)行,并在其中的左表、和右表列填寫NULL
關(guān)鍵字:FULL JOIN

三、交叉連接
定義:
將兩個(gè)表的所有行進(jìn)行組合,連接后的行數(shù)為兩個(gè)表的乘積數(shù)。(笛卡爾積)
關(guān)鍵詞:CROSS JOIN
格式:FROM 表名1 CROSS JOIN 表名2

四, 自身連接
自身連接是指同一個(gè)表自己與自己進(jìn)行連接。這種一元連接通常用于從自反關(guān)系(也稱作遞歸關(guān)系)中抽取數(shù)據(jù)。例如人力資源數(shù)據(jù)庫中雇員與老板的關(guān)系。
下面例子是在機(jī)構(gòu)表中查找本機(jī)構(gòu)和上級(jí)機(jī)構(gòu)的信息。
select s.inst_no superior_inst, s.inst_name sup_inst_name, i.inst_no, i.inst_name
from t_institution i
join t_institution s
on i.superior_inst = s.inst_no

結(jié)果是:
superior_inst sup_inst_name         inst_no     inst_name
800                             廣州市                5801        天河區(qū)
800                             廣州市                5802        越秀區(qū)
800                             廣州市                5803        白云區(qū)

相關(guān)文章

  • 一文帶大家由淺入深的了解MySQL底層查詢邏輯

    一文帶大家由淺入深的了解MySQL底層查詢邏輯

    這篇文章主要給大家詳細(xì)介紹了MySQL底層查詢邏輯,文中有詳細(xì)的代碼示例和圖文介紹,具有一定的參考價(jià)值,感興趣的同學(xué)可以借鑒閱讀
    2023-06-06
  • MySQL查詢緩存的小知識(shí)

    MySQL查詢緩存的小知識(shí)

    這篇文章主要介紹了MySQL查詢緩存的的相關(guān)資料,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-12-12
  • Windows安裝MySQL8.0.x 版本教程

    Windows安裝MySQL8.0.x 版本教程

    這篇文章介紹了Windows安裝MySQL8.0.x 版本的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • mysql性能監(jiān)控工具Innotop簡(jiǎn)介及配置

    mysql性能監(jiān)控工具Innotop簡(jiǎn)介及配置

    INNOTOP是一個(gè)通過文本模式顯示MySQL和InnoDB的監(jiān)測(cè)工具。INNOTOP是用PERL語言寫成的,這使它能更加靈活的使用在各種操作平臺(tái)之上,它能詳細(xì)的的監(jiān)控出當(dāng)前MYSQL和INNODB運(yùn)行的狀態(tài),以DBA根據(jù)結(jié)果,可以合理的優(yōu)化MYSQL,讓MYSQL更穩(wěn)定更高效的運(yùn)行。
    2014-08-08
  • Linux下mysql異地自動(dòng)備份的方法

    Linux下mysql異地自動(dòng)備份的方法

    這篇文章主要介紹了Linux下mysql異地自動(dòng)備份的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • MySQL開啟遠(yuǎn)程訪問權(quán)限的最新方法

    MySQL開啟遠(yuǎn)程訪問權(quán)限的最新方法

    這篇文章主要給大家介紹了關(guān)于MySQL開啟遠(yuǎn)程訪問權(quán)限的最新方法,在MySQL中,要實(shí)現(xiàn)遠(yuǎn)程訪問,首先需要在MySQL服務(wù)端上開啟相應(yīng)的權(quán)限,需要的朋友可以參考下
    2023-08-08
  • MySQL的binlog日志使用詳解

    MySQL的binlog日志使用詳解

    這篇文章主要介紹了MySQL的binlog日志使用詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 深入探討:MySQL數(shù)據(jù)庫MyISAM與InnoDB存儲(chǔ)引擎的比較

    深入探討:MySQL數(shù)據(jù)庫MyISAM與InnoDB存儲(chǔ)引擎的比較

    本篇文章是對(duì)MySQL數(shù)據(jù)庫MyISAM與InnoDB存儲(chǔ)引擎的比較進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • Mysql中的Datetime和Timestamp比較

    Mysql中的Datetime和Timestamp比較

    這篇文章主要介紹了Mysql中的Datetime和Timestamp比較,本文總結(jié)了它們的相同點(diǎn)和不同點(diǎn)以及時(shí)間格式介紹等,需要的朋友可以參考下
    2015-03-03
  • MySQL性能優(yōu)化之分區(qū)表的使用詳解

    MySQL性能優(yōu)化之分區(qū)表的使用詳解

    在當(dāng)今數(shù)據(jù)驅(qū)動(dòng)的時(shí)代,大型數(shù)據(jù)庫的性能優(yōu)化對(duì)于企業(yè)的成功至關(guān)重要,本文將深入探討MySQL分區(qū)表的基礎(chǔ)知識(shí)、性能優(yōu)勢(shì)、分區(qū)策略的選擇和實(shí)施等內(nèi)容,感興趣的小伙伴可以了解一下
    2023-06-06

最新評(píng)論