亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > SQL Server > 正文

SQL 多表連接查詢實現語句

2024-08-31 00:59:14
字體:
來源:轉載
供稿:網友

1.理論

只要兩個表的公共字段有匹配值,就將這兩個表中的記錄組合起來。

個人理解:以一個共同的字段求兩個表中符合要求的交集,并將每個表符合要求的記錄以共同的字段為牽引合并起來。

語法

select * FROM table1 INNER JOIN table2 ON table1 . field1 compopr table2 . field2

INNER JOIN 操作包含以下部分:

部分說明

table1, table2要組合其中的記錄的表的名稱。

field1,field2要聯接的字段的名稱。如果它們不是數字,則這些字段的數據類型必須相同,并且包含同類數據,但是,它們不必具有相同的名稱。

compopr
任何關系比較運算符:“=”、“<”、“>”、“<=”、“>=”或者“<>”。

     

說明

可以在任何 FROM 子句中使用 INNER JOIN 操作。這是最常用的聯接類型。只要兩個表的公共字段上存在相匹配的值,Inner 聯接就會組合這些表中的記錄。

可以將 INNER JOIN 用于 Departments 及 Employees 表,以選擇出每個部門的所有雇員。而要選擇所有部分(即使某些部門中并沒有被分配雇員)或者所有雇員(即使某些雇員沒有分配到任何部門),則可以通過 LEFT JOIN 或者 RIGHT JOIN 操作來創建外部聯接。

如果試圖聯接包含備注或 OLE 對象數據的字段,將發生錯誤。

可以聯接任何兩個相似類型的數字字段。例如,可以聯接自動編號和長整型字段,因為它們均是相似類型。然而,不能聯接單精度型和雙精度型類型字段。

下例展示了如何通過 CategoryID 字段聯接 Categories 和 Products 表:

SELECT CategoryName, ProductName

FROM Categories INNER JOIN Products

ON Categories.CategoryID = Products.CategoryID;

在前面的示例中,CategoryID 是被聯接字段,但是它不包含在查詢輸出中,因為它不包含在 SELECT 語句中。若要包含被聯接字段,請在 SELECT 語句中包含該字段名,在本例中是指 Categories.CategoryID。

也可以在 JOIN 語句中鏈接多個 ON 子句,請使用如下語法:

SELECT fields
FROM table1 INNER JOIN table2
ON table1.field1 compopr table2.field1 AND
ON table1.field2 compopr table2.field2 OR
ON table1.field3 compopr table2.field3;

也可以通過如下語法嵌套 JOIN 語句:

SELECT fields
FROM table1 INNER JOIN
(table2 INNER JOIN [( ]table3
[INNER JOIN [( ]tablex [INNER JOIN ...)]
ON table3.field3 compopr tablex.fieldx)]
ON table2.field2 compopr table3.field3)
ON table1.field1 compopr table2.field2;

LEFT JOIN 或 RIGHT JOIN 可以嵌套在 INNER JOIN 之中,但是 INNER JOIN 不能嵌套于 LEFT JOIN 或 RIGHT JOIN 之中。


2.操作實例

表A記錄如下:
aID               aNum
1                  a20050111
2                  a20050112
3                  a20050113
4                  a20050114
5                  a20050115

表B記錄如下:
bID               bName
1                   2006032401
2                  2006032402
3                  2006032403
4                  2006032404
8                  2006032408


實驗如下:
1.left join

sql語句如下:
select * from A
left join B
on A.aID = B.bID

結果如下:
aID               aNum                          bID                  bName
1                   a20050111                1                      2006032401
2                   a20050112                2                     2006032402
3                   a20050113                3                     2006032403
4                   a20050114                4                     2006032404
5                   a20050115                NULL              NULL
(所影響的行數為 5 行)

結果說明:
               left join是以A表的記錄為基礎的,A可以看成左表,B可以看成右表,left join是以左表為準的.
換句話說,左表(A)的記錄將會全部表示出來,而右表(B)只會顯示符合搜索條件的記錄(例子中為: A.aID = B.bID).
B表記錄不足的地方均為NULL.

2.right join
sql語句如下:
select * from A
right join B
on A.aID = B.bID
結果如下:
aID               aNum                          bID                  bName
1                   a20050111                1                      2006032401
2                   a20050112                2                     2006032402
3                   a20050113                3                     2006032403
4                   a20050114                4                     2006032404
NULL           NULL                          8                     2006032408
(所影響的行數為 5 行)
結果說明:
        仔細觀察一下,就會發現,和left join的結果剛好相反,這次是以右表(B)為基礎的,A表不足的地方用NULL填充.


3.inner join
sql語句如下:
select * from A
innerjoin B
on A.aID = B.bID

結果如下:
aID               aNum                          bID                  bName
1                   a20050111                1                      2006032401
2                   a20050112                2                     2006032402
3                   a20050113                3                     2006032403
4                   a20050114                4                     2006032404

結果說明:
        很明顯,這里只顯示出了 A.aID = B.bID的記錄.這說明inner join并不以誰為基礎,它只顯示符合條件的記錄.   還有就是inner join 可以結合where語句來使用 如:    select * from A innerjoin B on A.aID = B.bID where b.bname='2006032401' 這樣的話 就只會放回一條數據了

個人總結:將多張表安裝以上三種規則連接成一張表

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品欧美久久久| 91国自产精品中文字幕亚洲| 九九精品在线播放| 欧美黄色三级网站| 亚洲黄色有码视频| 日韩电影在线观看免费| 日韩精品免费在线视频| 在线视频一区二区| 久久久精品欧美| 亚洲人成伊人成综合网久久久| 欧美中文在线观看国产| 欧美日韩国产影院| 精品香蕉在线观看视频一| 美女少妇精品视频| 91豆花精品一区| 97久久精品国产| 国产精品96久久久久久又黄又硬| 一本色道久久综合亚洲精品小说| 97视频在线观看免费| 欧美精品激情blacked18| 欧美在线视频观看| 伊人久久久久久久久久| 日韩欧美在线网址| 国产ts一区二区| 欧美大片大片在线播放| 精品色蜜蜜精品视频在线观看| 九九久久国产精品| 国产午夜精品久久久| 97香蕉久久超级碰碰高清版| 久久97久久97精品免视看| 精品视频在线导航| 富二代精品短视频| 亚洲系列中文字幕| 国产不卡精品视男人的天堂| 国产在线视频91| 中文字幕av一区二区三区谷原希美| 国产精品中文久久久久久久| 亚洲人成网站999久久久综合| 亚洲网站在线播放| 伊人久久久久久久久久久| 高清一区二区三区日本久| 欲色天天网综合久久| 亚洲精品综合精品自拍| 亚洲另类欧美自拍| 在线日韩av观看| 亚洲欧美国产日韩天堂区| 亚洲欧美在线一区| 欧美国产日韩一区二区在线观看| 久久久久久久国产精品视频| 中文国产成人精品久久一| 亚洲free性xxxx护士白浆| 亚洲国产精品久久久久久| 91国产视频在线播放| 精品久久久国产| 热re91久久精品国99热蜜臀| 亚洲人成在线免费观看| 日韩在线视频网| 欧美猛交ⅹxxx乱大交视频| 亚洲色图av在线| 亚洲第一男人av| 亚洲欧美日韩国产成人| 日韩激情av在线播放| 国产黑人绿帽在线第一区| 欧美疯狂xxxx大交乱88av| 浅井舞香一区二区| 国产成人福利夜色影视| 在线视频日韩精品| 国产ts人妖一区二区三区| 欧美精品在线观看| 精品一区二区三区四区| 91夜夜未满十八勿入爽爽影院| 国产在线精品播放| 久久影院在线观看| 精品久久久久久久久久久| 欧美激情中文字幕在线| 亚洲人成伊人成综合网久久久| 日韩av在线免费播放| 亚洲电影免费观看| 日韩视频免费看| 亚洲成人中文字幕| 91国内精品久久| 日韩欧美在线视频观看| 久久亚洲精品视频| 国产一区二区久久精品| 欧美性xxxx| 疯狂蹂躏欧美一区二区精品| 欧美性一区二区三区| 91日本视频在线| 国产精品1234| 麻豆乱码国产一区二区三区| 欧美国产日韩一区二区在线观看| 欧美午夜片欧美片在线观看| www高清在线视频日韩欧美| 久久99精品久久久久久噜噜| 日韩欧美亚洲范冰冰与中字| 日本久久中文字幕| 亚洲成人激情图| 自拍偷拍亚洲精品| 国产精品高精视频免费| 欧美小视频在线观看| 福利一区福利二区微拍刺激| 欧美国产日韩xxxxx| 色综合色综合久久综合频道88| 欧美精品videos另类日本| 不卡中文字幕av| 久久久久久久久久国产精品| 欧美亚洲国产成人精品| 国产成人高清激情视频在线观看| 97精品国产97久久久久久免费| 亚洲sss综合天堂久久| 在线播放国产精品| 国产激情综合五月久久| 国产一区二区在线免费视频| 亚洲精品v天堂中文字幕| 欧美日韩性视频在线| 欧美激情视频三区| 尤物yw午夜国产精品视频| 欧美激情精品久久久久久变态| 日韩精品中文字幕久久臀| 国产免费一区二区三区在线能观看| 欧美大肥婆大肥bbbbb| 91九色视频导航| 中文字幕精品—区二区| 国产色婷婷国产综合在线理论片a| 中国日韩欧美久久久久久久久| 精品国产福利在线| 久久久久亚洲精品| 久久久久久久久久久久av| 日韩影视在线观看| 亚洲缚视频在线观看| 国产精品日韩在线观看| 久久精品电影一区二区| 亚洲国产又黄又爽女人高潮的| xvideos国产精品| 欧美猛交免费看| 欧美孕妇毛茸茸xxxx| 亚洲日韩中文字幕在线播放| 97在线视频免费播放| 日本免费在线精品| 国产视频精品xxxx| 欧美洲成人男女午夜视频| 国产成人精品久久二区二区| 日韩电影免费在线观看中文字幕| 亚洲激情视频网站| 久久天天躁狠狠躁夜夜爽蜜月| 国产欧美韩国高清| 精品无人区太爽高潮在线播放| 中文字幕日韩精品在线观看| www.日韩系列| 欧美性受xxx| 日韩av免费在线| 久久影视电视剧免费网站清宫辞电视| 午夜精品久久久久久99热| 欧美成人免费播放| 在线看福利67194| 一区二区亚洲欧洲国产日韩| 欧美极品少妇全裸体| 日韩在线观看免费| 欧美夫妻性生活视频| 欧美黑人巨大精品一区二区| 日产精品99久久久久久| 亚洲精选在线观看| 按摩亚洲人久久| 亚洲人午夜色婷婷|