資料庫 sql中各種join的筆記

2021-08-27 06:33:59 字數 842 閱讀 8799

首先宣告,當你看到這篇文章時,或許看不懂,因為這是我自己通過自己理解而寫的筆記、

兩個參照表table1和table2都存在id欄位,但是table1、table2中其餘字段不同.

如果table1.id存在有1,2,3而table2.id中有1,3,4三個值

使用各種連線的語法,

select * from table1 left join table2 on table1.id=table2.id;

紫色字段可以填充 left join(左連線),right join(右連線),full join(全連線),join(內連線).

交叉連線

select * from table1 cross join table2;

根據不同的鏈結,產生出不同的結果。

左連線,參照為table1,

那麼結果則是參照table1.id給出。也就是1,2,3而table2.id並沒有對應值為3的參照,其相應用null填充。

右連線參照table2.id給出,而用法與左連線類似。此處不再贅述。

全連線。要參照table1.id和table2.id給出,會產生4個字段結果。table1存在而table2不存在的字段用null填充。反之亦然。多說一句。可以說全鏈結是左、右連線的並。

內連線產生兩個字段,即左、右連線的交。只產生table1.id=table2.id的結果。可以認為就是select * from table1 table2 where table1.id = table2.id;

交叉連線產生的結果比較多,有9個結果,即table1.id。size()×table2.size()。(此處不規範,但是自己做的筆記能明白就可以了)。

即笛卡爾積。

Sql 資料庫 join 連線

sql裡面有兩個連線乙個是union,另乙個就是join 他們兩個的區別 union 連線的是行 是一行一行的連 而 join 連線的是列 字段 他們倆的區別暫時就就知道這點 join連線的使用的前提 1.必須要有至少乙個表 乙個表可以用自連線 2.必須要有相關聯的列 字段 主鍵外來鍵啥的。join...

資料庫sql的join多表

sql join 用於根據兩個或多個表中的列之間的關係,從這些表中查詢資料。注意,join後的資料記錄數不一定就是左或右表的簡單連線,圖表只代表集合關係,在數量上並不準確,如這個條件後結果,數量大於左表總數。我喜歡這個概念,不過讓我們先來看看這是否會在實際中發揮作用。假設我們有以下的兩個 表a在左邊...

資料庫中 join 的使用

關聯多張表資料,並通過條件篩選符合條件的資料。一般來說,會有四種 1.left join 左連線 2.right join 右連線 3.inner join 內連線 4.full join 全連線 left join以左表作為基準,然後加入符合條件的右表資料,最終得到的資料數目基本會不小於左表的資料...