溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MySQL的連接方式和多表查詢方法

發(fā)布時間:2021-07-19 00:27:48 來源:億速云 閱讀:125 作者:chen 欄目:開發(fā)技術(shù)

本篇內(nèi)容主要講解“MySQL的連接方式和多表查詢方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“MySQL的連接方式和多表查詢方法”吧!

目錄
  • MySQL 內(nèi)連接、左連接、右連接、外連接、多表查詢

    • 構(gòu)建環(huán)境:

    • 一、INNER JION 內(nèi)連接 ( A ∩ B )

    • 二、LEFT JOIN 左外連接( A 全有 )

    • 三、RIGHT JOIN 右外連接 (B 全有)

    • 四、FULL JOIN 全外連接( A + B)

    • 五、LEFT Excluding JOIN ( A - B 即 A 表獨有)+

    • 六、RIGHT Excluding JOIN ( B - A 即 B表獨有)

    • 七、OUTER Excluding JOIN (A 與 B 各自獨有)


MySQL 內(nèi)連接、左連接、右連接、外連接、多表查詢

構(gòu)建環(huán)境:

create table t_emp(
	id int primary key, 
	name varchar(20),
	deptId int
);
create table t_dept(
	id int primary key,
	name varchar(20)
);
insert into t_dept(id, name) values(1, '設(shè)計部');
insert into t_dept(id, name) values(2, '開發(fā)部');
insert into t_dept(id, name) values(3, '測試部');
insert into t_emp(id, name, deptId) values(1, '張三', 1);
insert into t_emp(id, name, deptId) values(2, '李四', 2);
insert into t_emp(id, name, deptId) values(3, '王五', 0);
# ps:為了說明方便,t_emp 表 說成 A 表, t_dept 表說成 B 表

目錄

一、INNER JION 內(nèi)連接 ( A ∩ B )

MySQL的連接方式和多表查詢方法

SELECT * FROM t_emp e INNER JOIN t_dept d ON  e.deptId = d.id;

MySQL的連接方式和多表查詢方法

二、LEFT JOIN 左外連接( A 全有 )

MySQL的連接方式和多表查詢方法

SELECT * FROM t_emp e LEFT JOIN t_dept d ON e.deptId = d.id;

MySQL的連接方式和多表查詢方法

三、RIGHT JOIN 右外連接 (B 全有)

MySQL的連接方式和多表查詢方法

SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId = d.id;

MySQL的連接方式和多表查詢方法

四、FULL JOIN 全外連接( A + B)

MySQL的連接方式和多表查詢方法

SELECT * FROM t_emp e LEFT JOIN t_dept d 
ON e.deptId = d.id UNION 
SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId = d.id;

MySQL的連接方式和多表查詢方法

五、LEFT Excluding JOIN ( A - B 即 A 表獨有)+

MySQL的連接方式和多表查詢方法

SELECT * FROM t_emp e LEFT JOIN t_dept d ON e.deptId= d.id WHERE d.id is null;

MySQL的連接方式和多表查詢方法

六、RIGHT Excluding JOIN ( B - A 即 B表獨有)

MySQL的連接方式和多表查詢方法

SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId= d.id WHERE e.id is null;

MySQL的連接方式和多表查詢方法

七、OUTER Excluding JOIN (A 與 B 各自獨有)

MySQL的連接方式和多表查詢方法

SELECT * FROM t_emp e LEFT JOIN t_dept d ON e.deptId= d.id WHERE d.id is null
UNION
SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId= d.id WHERE e.id is null;

MySQL的連接方式和多表查詢方法

到此,相信大家對“MySQL的連接方式和多表查詢方法”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI