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

SQL的各種連接Join案例詳解

 更新時(shí)間:2020年09月20日 10:22:55   作者:章朔  
SQL JOIN 子句用于把來自兩個(gè)或多個(gè)表的行結(jié)合起來,基于這些表之間的共同字段,下面就為大家分享一下

最常見的 JOIN 類型:SQL INNER JOIN(簡單的 JOIN)、SQL LEFT JOIN、SQL RIGHT JOIN、SQL FULL JOIN,其中前一種是內(nèi)連接,后三種是外鏈接。

假設(shè)我們有兩張表,Table A是上邊的表,Table B是下邊的表。

Table A

id name
1 Google
2 淘寶
3 微博
4 Facebook

Table B

id address
1 美國
5 中國
3 中國
6 美國

一、INNER JOIN

內(nèi)連接是最常見的一種連接,只連接匹配的行。

inner join語法

select column_name(s)
from table 1
INNER JOIN table 2
ON
table 1.column_name=table 2.column_name

注釋:INNER JOIN與JOIN是相同


INNER JOIN產(chǎn)生的結(jié)果集中,是1和2的交集。

select * from Table A inner join Table B
on Table A.id=Table B.id

執(zhí)行以上SQL輸出結(jié)果如下:

id name address
1 Google 美國
3 微博 中國

二、LEFT JOIN

LEFT JOIN返回左表的全部行和右表滿足ON條件的行,如果左表的行在右表中沒有匹配,那么這一行右表中對應(yīng)數(shù)據(jù)用NULL代替。

LEFT JOIN 語法

select column_name(s)
from table 1
LEFT JOIN table 2
ON table 1.column_name=table 2.column_name

注釋:在某些數(shù)據(jù)庫中,LEFT JOIN 稱為LEFT OUTER JOIN


LEFT JOIN產(chǎn)生表1的完全集,而2表中匹配的則有值,沒有匹配的則以null值取代。

select * from Table A left join Table B
on Table A.id=Table B.id

執(zhí)行以上SQL輸出結(jié)果如下:

id name address
1 Google 美國
2 淘寶 null
3 微博 中國
4 Facebook null

三、RIGHT JOIN

RIGHT JOIN返回右表的全部行和左表滿足ON條件的行,如果右表的行在左表中沒有匹配,那么這一行左表中對應(yīng)數(shù)據(jù)用NULL代替。

RIGHT JOIN語法

select column_name(s)
from table 1
RIGHT JOIN table 2
ON table 1.column_name=table 2.column_name

注釋:在某些數(shù)據(jù)庫中,RIGHT JOIN 稱為RIGHT OUTER JOIN


RIGHT JOIN產(chǎn)生表2的完全集,而1表中匹配的則有值,沒有匹配的則以null值取代。

select * from Table A right join Table B
on Table A.id=Table B.id

執(zhí)行以上SQL輸出結(jié)果如下:

id name address
1 Google 美國
5 null 中國
3 微博 中國
6

四、FULL OUTER JOIN

FULL JOIN 會(huì)從左表 和右表 那里返回所有的行。如果其中一個(gè)表的數(shù)據(jù)行在另一個(gè)表中沒有匹配的行,那么對面的數(shù)據(jù)用NULL代替

FULL OUTER JOIN語法

select column_name(s)
from table 1
FULL OUTER JOIN table 2
ON table 1.column_name=table 2.column_name


FULL OUTER JOIN產(chǎn)生1和2的并集。但是需要注意的是,對于沒有匹配的記錄,則會(huì)以null做為值。

select * from Table A full outer join Table B
on Table A.id=Table B.id

執(zhí)行以上SQL輸出結(jié)果如下:

id name address
1 Google 美國
2 淘寶 null
3 微博 中國
4 Facebook null
5 null 中國
6 null 美國

到此這篇關(guān)于SQL的各種連接Join案例詳解的文章就介紹到這了,更多相關(guān)SQL Join內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳細(xì)聊聊關(guān)于sql注入的一些零散知識(shí)點(diǎn)

    詳細(xì)聊聊關(guān)于sql注入的一些零散知識(shí)點(diǎn)

    SQL注入攻擊是通過將惡意的SQL查詢或添加語句插入到應(yīng)用的輸入?yún)?shù)中,再在后臺(tái)SQL服務(wù)器上解析執(zhí)行進(jìn)行的攻擊,它目前是黑客對數(shù)據(jù)庫進(jìn)行攻擊的最常用的手段之一,這篇文章主要給大家介紹了關(guān)于sql注入的一些零散知識(shí)點(diǎn),需要的朋友可以參考下
    2021-10-10
  • 一篇文章帶你了解數(shù)據(jù)庫中JOIN的用法

    一篇文章帶你了解數(shù)據(jù)庫中JOIN的用法

    這篇文章主要給大家介紹了關(guān)于數(shù)據(jù)庫中JOIN的用法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用數(shù)據(jù)庫具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • SQL四舍五入、向下取整、向上取整函數(shù)介紹

    SQL四舍五入、向下取整、向上取整函數(shù)介紹

    這篇文章主要介紹了SQL四舍五入、向下取整、向上取整函數(shù)介紹,本文用簡潔直白的語言介紹了實(shí)現(xiàn)這三個(gè)需求的函數(shù),需要的朋友可以參考下
    2015-06-06
  • 免費(fèi)開源數(shù)據(jù)庫:SQLite、MySQL和PostgreSQL的優(yōu)缺點(diǎn)

    免費(fèi)開源數(shù)據(jù)庫:SQLite、MySQL和PostgreSQL的優(yōu)缺點(diǎn)

    對于處理大規(guī)模數(shù)據(jù)和高并發(fā)訪問的場景,MySQL和PostgreSQL更適合,SQLite在小型應(yīng)用程序或嵌入式設(shè)備中是一種輕量級(jí)、簡單和易于使用的選擇,根據(jù)具體的應(yīng)用需求和場景特點(diǎn),選擇合適的開源關(guān)系型數(shù)據(jù)庫可以提供更好的性能、可擴(kuò)展性和靈活性
    2024-02-02
  • SQL 按特定字段值排序

    SQL 按特定字段值排序

    SQL 按特定字段值排序的代碼,有需要的朋友可以參考下。
    2009-08-08
  • SQL數(shù)據(jù)庫的所有命令(函數(shù)、運(yùn)算符)匯總大全

    SQL數(shù)據(jù)庫的所有命令(函數(shù)、運(yùn)算符)匯總大全

    結(jié)構(gòu)化查詢語言(Structured?Query?Language)簡稱SQL,結(jié)構(gòu)化查詢語言是一種數(shù)據(jù)庫查詢和程序設(shè)計(jì)語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng)。sql語句就是對數(shù)據(jù)庫進(jìn)行操作的一種語言。
    2023-01-01
  • 虛擬主機(jī)ACCESS轉(zhuǎn)換成MSSQL完全攻略(圖文教程)

    虛擬主機(jī)ACCESS轉(zhuǎn)換成MSSQL完全攻略(圖文教程)

    大家都知道,ACCESS數(shù)據(jù)庫在數(shù)據(jù)量到達(dá)一定程度后,訪問速度會(huì)明顯變慢,甚至造成崩潰。目前,大多數(shù)虛擬主機(jī)服務(wù)商提供的ASP主機(jī)空間一般都同時(shí)支持MS ACCESS和MS SQL兩種類型的數(shù)據(jù)庫。
    2010-04-04
  • SQL中過濾條件放on和where中的區(qū)別詳解

    SQL中過濾條件放on和where中的區(qū)別詳解

    這篇文章主要給大家介紹了關(guān)于SQL中過濾條件放on和where中的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧
    2019-01-01
  • 數(shù)據(jù)庫修改多對多的中間表的記錄的技巧

    數(shù)據(jù)庫修改多對多的中間表的記錄的技巧

    修改多對多的中間表的記錄的方法,需要的朋友可以參考下。提高效率。
    2010-01-01
  • Navicat最新永久安裝使用方法(推薦)

    Navicat最新永久安裝使用方法(推薦)

    Navicat是一款輕量級(jí)的用于MySQL連接和管理的工具,非常好用,使用起來方便快捷,簡潔,下面我會(huì)簡單的講一下其安裝以及使用的方法,感興趣的朋友一起看看吧
    2023-10-10

最新評論