MySQL中表的內(nèi)連和外連詳解
一、內(nèi)連接
內(nèi)連接實際上就是利用 where 子句對兩種表形成的笛卡兒積進行篩選,前面學習的查詢都是內(nèi)連接,也是在開發(fā)過程中使用的最多的連接查詢。
select 字段 from 表1 inner join 表2 on 連接條件 and 其他條件;
注意:前面學習的都是內(nèi)連接。
練習 —— 顯示 SMITH 的名字和部門名稱
(1)用前面的寫法

(2)用標準的內(nèi)連接寫法

二、外連接
外連接分為左外連接和右外連接。
1、左外連接
如果聯(lián)合查詢,左側(cè)的表完全顯示我們就說是左外連接。
select 字段名 from 表名1 left join 表名2 on 連接條件
練習
- 建兩張表并插入數(shù)據(jù)



查詢所有學生的成績,如果這個學生沒有成績,也要將學生的個人信息顯示出來:
當左邊表和右邊表沒有匹配時,也會顯示左邊表的數(shù)據(jù)

2、右外連接
如果聯(lián)合查詢,右側(cè)的表完全顯示我們就說是右外連接。
select 字段 from 表名1 right join 表名2 on 連接條件;
練習
(1)對 stu 表和 exam 表聯(lián)合查詢,把所有的成績都顯示出來,即使這個成績沒有學生與它對應(yīng),也要顯示出來
(2)列出部門名稱和這些部門的員工信息,同時列出沒有員工的部門


總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Mysql縱表轉(zhuǎn)換為橫表的方法及優(yōu)化教程
在應(yīng)用中為了從不同的視圖去分析數(shù)據(jù),會使用不同的方案去查詢數(shù)據(jù)庫,橫表和縱表的相互轉(zhuǎn)換就是其中一個常見的情景,這篇文章主要給大家介紹了關(guān)于Mysql縱表轉(zhuǎn)換為橫表的相關(guān)資料,需要的朋友可以參考下2021-08-08
MySQL 存儲引擎InnoDB 架構(gòu)與原理深度解析
這篇文章詳細介紹了MySQL中InnoDB和MyISAM兩種主要存儲引擎的特性、區(qū)別和使用場景,探討了InnoDB的頁結(jié)構(gòu)、分層存儲結(jié)構(gòu)以及其在事務(wù)管理、崩潰恢復(fù)和并發(fā)控制方面的優(yōu)勢,感興趣的朋友跟隨小編一起看看吧2026-03-03
mysql中關(guān)于Myisam_recover自動修復(fù)的使用方法
這篇文章主要介紹了mysql中關(guān)于Myisam_recover自動修復(fù)的使用方法,需要的朋友可以參考下2016-05-05
Mysql 報Row size too large 65535 的原因及解決方法
這篇文章主要介紹了Mysql 報Row size too large 65535 的原因及解決方法 的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-06-06
ubuntu下磁盤空間不足導(dǎo)致mysql無法啟動的解決方法
昨天又遇到了MySQL數(shù)據(jù)庫無法重啟的問題,還以為是權(quán)限的原因,后來發(fā)現(xiàn)提示是因為磁盤空間不足導(dǎo)致的,通過查找相關(guān)資料得以解決了,所以下面這篇文章主要介紹了ubuntu下磁盤空間不足導(dǎo)致mysql無法啟動的解決方法,需要的朋友可以參考下。2017-03-03
MySQL order by與group by查詢優(yōu)化實現(xiàn)詳解
order by 子句盡量使用index方式排序(即using index),避免使用filesort方式排序(即using filesort)。Index方式效率高,它指MySQL掃描索引本身完成排序,filesort則效率低2022-11-11
結(jié)合PHP腳本添加和查詢MySQL數(shù)據(jù)的基本教程
這篇文章主要介紹了結(jié)合PHP腳本添加和查詢MySQL數(shù)據(jù)的基本教程,即在PHP程序中使用基本的SELECT FROM和INSERT INTO語句,需要的朋友可以參考下2015-12-12
mysql注入之長字符截斷,orderby注入,HTTP分割注入,limit注入方式
這篇文章主要介紹了mysql注入之長字符截斷,orderby注入,HTTP分割注入,limit注入方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11


