谷搜易外貿網站建設站長之家關鍵詞挖掘工具
目錄
一.內連接
二.外連接
1.左外連接
2.右外連接
一.內連接
表的連接分為內連和外連
內連接實際上就是利用where子句對兩種表形成的笛卡兒積進行篩選,我們前面學習的查詢都是內連接,也是在開發(fā)過程中使用的最多的連接查詢。
語法:
select 字段 from 表1 inner join 表2 on 連接條件 and 其他條件;
備注:前面學習的都是內連接
案例:顯示SMITH的名字和部門名稱
以前的方法:
select ename,dname from emp,dept where emp.deptno=dept.deptno and emp.ename='SMITH';
用標準的內連接寫法:
二.外連接
外連接分為左外連接和右外連接
1.左外連接
如果聯(lián)合查詢,左側的表完全顯示我們就說是左外連接。
語法:
select 字段名 ?from 表名1 left join 表名2 on 連接條件
案例:
create table stu (id int, name varchar(30)); -- 學生表
insert into stu values(1,'jack'),(2,'tom'),(3,'kity'),(4,'nono');
create table exam (id int, grade int); -- 成績表
insert into exam values(1, 56),(2,76),(11, 8);
查詢所有學生的成績,如果這個學生沒有成績,也要將學生的個人信息顯示出來 :
2.右外連接
如果聯(lián)合查詢,右側的表完全顯示我們就說是右外連接。
語法:
select 字段 from 表名1 right join 表名2 ?on 連接條件;
對stu表和exam表聯(lián)合查詢,把所有的成績都顯示出來,即使這個成績沒有學生與它對應,也要
顯示出來:
其實我們本身也可以使用左外連接 來達到 右外連接的功能:
只需要將表的位置交換即可
列出部門名稱和這些部門的員工信息,同時列出沒有員工的部門: