SQL常用的幾種連線(JOIN)小結

2024-12-31 17:35:12 字數 2284 閱讀 3235

1樓:樹懶學堂

sql join 用於把來自兩個或多個表的行結合起來。

sql join 子句用於把來自兩個或多個表的行結合起來,基於這些表之間的共同欄位。

最常見的 join 型別:sql inner join(簡單的 join)。 sql inner join 從多個表中返回滿足 join 條件的所有行。

例項:<>

from 樹懶學堂。

以上即「websites」表中的「id」列指向「access_log」表中的欄位「site_id」。上面這兩個表是通過「site_id」列聯絡起來的。

不同的 sql join

您可以使用的不同的 sql join 型別:

inner join:如果表中有至少乙個匹配,則返回行。

left join:即使右表中沒有匹配,也從左表返回所有的行。

right join:即使左表中沒有匹配,也從右表返回所有的行。

full join:只要其中乙個表中存在匹配,則返回行。

sql必知必會(sql99連線(join))

2樓:新科技

sql92

sql99

sql92

sql99

sql99

sql92

sql99

至此我們講解完了 sql92 和搏仿 sql99 標準下的連線查詢,連線操作基本上可以分成三種情況:

sql 連線具有通用性,但是不同的 dbms 在使用規範上會存在差異,在標準支援上也存在不同。在實際工作中,你需要參考你正在使用的 dbms 文件,這皮晌裡我整理了一些需要注意的常見的問題。

1. 不是所有的 dbms 都支援全外連線

沒有表別名 as

的外連線只有左連線

1. 控制連線表的數量

2. 在連線時不要忘記 where 語句

3. 使用自連線而不是子查燃銀鋒詢

sql實戰新手入門:全聯接(full join)

3樓:天羅網

全聯接(full join)

圖 下面的查詢將給出包含所有圖書和所有書櫃位置的資料集 其中一些圖書位於書棗穗敬架的同凳慎一層上 該查詢與之前的查詢在結構上是相同的 只是這裡使用了full join查詢。

select

loc_shelf

loc_position_left

bk_title

from location full join books

on location fk_bk_loc = books bk_id

由於現在從左表和右表都返回記錄 因此哪乙個表作為左表 哪乙個表作為右邊已經不再重要 表 列出了該查詢結果中的變化。

表 full join查詢返回的結果。

在上面的例子中 由於參照完整性約束(關於參照完整性的詳細內容請參見第 章) location表中不能存在不匹配的記錄 因此必須交換左表和右表的位置並應用不同型別的聯接 在很多情況下 join條件與主鍵/外來鍵關係並不相同 這時將獲得包含來自左右兩個表中匹配和不匹配記錄的資料族模集。

例如 如果在乙個列上聯接兩個表 而該列既不是主鍵也不是外來鍵(例如bk_id = loc_position_left) 那麼結果集中不匹配的location記錄將包含大量的null值 因為loc_position_left僅具有 個不同的值 而bk_id具有 個值(這將返回 個null值) 儘管這是乙個有效的sql操作 但是從邏輯的角度來看該查詢並沒有太大的意義 用它來演示outerjoin的概念則再好不過。

現在已經不再需要這條多餘的記錄 可以安全地將其從books表中刪除。

delete books where bk_id= ;

在join的例子中 關鍵字outer是可選的 也可以簡單地使用left right或者full 對於inner join也是如此 rdbms認為不帶任何限定符的join是inner join型別 然而 使用限定符是乙個良好的sql實踐 相對於不帶限定符的join來說 它使sql**具有更好的可維護性。

返回目錄sql實戰新手入門。

SQL中的INNER JOIN和JOIN有什麼區別

使用join連表,缺陷的情況下是inner join,開發中使用的left join和right join屬於outer join,outer join還包括full join 現有兩張表,table a 是左邊的表。table b 是右邊的表。其各有四條記錄,其中有兩條記錄name是相同的 1.i...

5幾種常用公文的寫作方法,5幾種常用公文的寫作方法

以公務bai員考試為例,申du 章 寫作指zhi導之公文寫作方法,dao比如 命令內 令 格式要求 標題 發容文物件 正文 落款 發文單位 發文時間 決定格式要求 標題 主送機關 普發性的決定可以不寫發文物件 正文 落款。公告格式要求 標題 正文 落款。通知格式要求 標題 發文物件 正文 落款。請示...

常用的rfid標籤晶片有哪幾種,常用的 RFID 標籤晶片有哪幾種

按頻段分,低頻,高頻,超高頻,微波。高頻在nfc 非接觸卡方面很多,超高 頻版在物流用的多,微波由於權標籤都是有源的,應用定於比較專業,比如資產管理等等。每個頻段的產品都有無數廠家,每個頻段也有若干標準,比如高頻就有iso15693 iso14443 以及很多廠家似有協議,nfc也有相關的一堆標準。...