1、內連線:等值連線、非等值連線、自連線
2、外連線:左連線、右連線
(本文例子,來自動力節點)
1、內連線:顯示薪水大於2000的員工資訊,並顯示所屬的部門名稱
select
e.ename,e.sal,d.dname
from
emp e join dept d
on
e.deptno = d.deptno #在建立連線時,一定要寫上兩表的關聯條件
where
e.sal > 2000; # 其實兩表通過上面的條件連線,已經建立的乙個更大一點表,現在提出挑選條件
2、外連線(右連線):顯示員工資訊,並顯示所屬的部門名稱,如果某乙個部門沒有員工,那麼該部門也必須顯示出來
select
e.ename,d.deptno
from
emp e right join dept d #右連線
on e.deptno = d.deptno;
3、外連線(左連線):顯示員工資訊,並顯示所屬的部門名稱,如果某乙個部門沒有員工,那麼該部門也必須顯示出來
select
e.ename,d.deptno
from
dept d left join emp e #左連線
on e.deptno = d.deptno;
4、總結:
b) 左連線:以左邊的表為基準,和右邊的表連線,將左表中沒有和右表產生關聯的記錄也顯示出來;
c) 右連線:以右邊的表為基準,和左邊的表連線,將右表中沒有和左表產生關聯的記錄也顯示出來。
Mysql連表查詢(內連線 外連線)
建立兩張 並分別插入資料 create table ifnot exists left table id int auto increment,age int,name varchar 20 primary key id engine innodb default charset utf8 auto...
知識點 左連線 右連線 內連線
外連線有 左連線 右連線 全連線 可以省略 outer關鍵字 即 外連線 不是乙個具體的連線 內連線 就是內連線 可以省略 inner關鍵字 左表的所有行會顯示,右表的 只有和左表匹配到的行才會顯示。即 a表的全集 ab表的交集 右表的所有行會顯示,左表的 只有和右表匹配到的行才會顯示。即 b表的全...
理解內連線和外連線
內連線 進行連線的兩個表對應的相匹配的字段完全相同的連線。join 外連線又分為左外連線和右外連線。左連線即left outer join 兩個表進行左連線時會返回左邊表中的所有的行和右邊表中與之相匹配的列值沒有相匹配的用空值代替。右連線即right outer join 兩個表進行右連線時會返回右...