外連線的語法

2021-05-21 17:40:29 字數 818 閱讀 1994

平時習慣了oracle的連線語法,每次看到join這種格式的,都要想半天。還是把它列一下,方便自己下次用。

select    table1.column, table2.column

from    table1

[cross join table2] |

[natural join table2] |

[join table2 using (column_name)] |

[join table2

on(table1.column_name = table2.column_name)] |

[left|right|full outer join table2

on (table1.column_name = table2.column_name)];

1. cross join 比較簡單。

2. natural join 是自動把兩個表中,名稱相同的字段做等值比較。 (同名的字段,資料型別也要一樣)

3. using 是指定某個欄位做等值比較。

4. on 就是自定義的比較條件了。

5. 外連線加了左右,是因為這個語法,決定了表出現的順序。from後面的,是left表,join後面的,是right表。如果你想把from後面的表的所有資料都查詢出來,不論是否滿足條件,就用left outer join。同理,查詢table2的所以資料,用right outer join。同時有需求,就用full outer join。

這個full outer join可不能用 where table1.column_name(+) = table2.column_name(+) 代替啊,會報錯的。

自然連線,外連線,左外連線,右外連線

1.自然連線 結果基於表r和s的笛卡爾乘積,取對應的r和s中相同屬性組都相同的值,同時相同屬性組只保留乙個 先來看圖示,2個表以及自然連線的結果 操作的步驟 1.1找出2個表中相同的屬性組 屬性a加上屬性b 1.2找相同屬性組中,相同的屬性值所對應的元組 相同的屬性值 1.2.相同屬性值對應的元組 ...

sql99語法 左 右 外連線

二 外連線 應用 查詢乙個表中有,另乙個表沒有的記錄 特點 1.外連線的查詢結果為主表中的所有記錄 如果從表中有和它匹配的,則顯示匹配的值 如果從表中沒有和他匹配的,則顯示null 外連線查詢結果 內連線 主表中有而從表中沒有的記錄 2 左外連線 left join 左邊的是主表 右外連線 righ...

SQL 內連線,外連線(左外連線 右外連線)

參考整理筆記 關鍵字 inner join on 語句 select from a table a inner join b table bon a.a id b.b id 執行結果 說明 組合兩個表中的記錄,返回關聯字段相符的記錄,也就是返回兩個表的交集 陰影 部分。關鍵字 left join o...