欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL 表的內(nèi)外連接案例詳解

 更新時間:2025年06月04日 10:56:03   作者:英雄不問出處~  
本文給大家介紹MySQL表的內(nèi)外連接,結(jié)合實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧

表的內(nèi)外連接(重點)

內(nèi)連接

內(nèi)連接實際上就是利用where子句對兩種表形成的笛卡兒積進行篩選,我們前面學習的查詢都是內(nèi)連接,也是在開發(fā)過程中使用的最多的連接查詢。

語法

select * from 表1 inner join 表2 on 連接條件 and 其他條件;

案例
顯示SMITH的名字和部門名稱

// 第一種,對兩張表做笛卡爾積
select ename,dname from emp,dept where emp.deptno=dept.deptno and ename='SMITH';
// 第二種,內(nèi)連接
select ename,dname from emp inner join dept on emp.deptno=dept.deptno where ename='SMITH';

外連接

左外連接

左外連接,左側(cè)表的數(shù)據(jù)完全保留,右側(cè)如果沒有數(shù)據(jù),對應的右側(cè)就全為空

語法
select * from 表名1 left join 表名2 on 連接條件

案例

// 見兩張表
學生表
create table stu(
id int,
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);

查詢所有學生的成績,如果這個學生沒有成績,也要將學生的個人信息顯示出來

select * from stu left join exam on stu.id=exam.id;

右外連接

右外連接,右側(cè)表的數(shù)據(jù)完全保留,左側(cè)如果沒有數(shù)據(jù),對應的左側(cè)就全為空

語法
select 字段 from 表名1 right join 表名2 on 連接條件;

案例
對stu表和exam表聯(lián)合查詢,把所有的成績都顯示出來,即使這個成績沒有學生與它對應,也要顯示出來

select * from stu right join exam on stu.id=exam.id;

其實左外連接也可以達到右外連接的目的

列出部門名稱和這些部門的員工信息,同時列出沒有員工的部門

// 左外連接
select * from dept left join emp on dept.deptno=emp.deptno;
select * from dept left join emp on dept.deptno=emp.deptno order by dept.deptno asc;
// 右外連接
select * from emp right join dept on dept.deptno=emp.deptno;

到此這篇關于MySQL 表的內(nèi)外連接的文章就介紹到這了,更多相關MySQL 表的內(nèi)外連接內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MySQL中使用PROFILING來查看SQL執(zhí)行流程的實現(xiàn)步驟

    MySQL中使用PROFILING來查看SQL執(zhí)行流程的實現(xiàn)步驟

    在MySQL中,PROFILING功能提供了一種方式來分析SQL語句的執(zhí)行時間,包括查詢執(zhí)行的各個階段,如發(fā)送、解析、優(yōu)化、執(zhí)行等,這對于診斷性能問題非常有用,本文給大家介紹了MySQL中使用PROFILING來查看SQL執(zhí)行流程的實現(xiàn)步驟,需要的朋友可以參考下
    2024-07-07
  • 使用MySQL實現(xiàn)select?into臨時表的功能

    使用MySQL實現(xiàn)select?into臨時表的功能

    這篇文章主要介紹了使用MySQL實現(xiàn)select?into臨時表的功能,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • MySQL架構(gòu)體系知識點總結(jié)

    MySQL架構(gòu)體系知識點總結(jié)

    在本篇內(nèi)容里我們給大家整理了關于MySQL架構(gòu)體系的相關知識點內(nèi)容以及相關實例,需要的朋友們學習下。
    2019-02-02
  • MySQL深入詳解delete與Truncate及drop的使用區(qū)別

    MySQL深入詳解delete與Truncate及drop的使用區(qū)別

    對于drop、truncate和delete雖然簡單,但是真要使用或者面試時候問到還是需要有一定的總結(jié),下面這篇文章主要給大家介紹了關于mysql中drop、truncate與delete區(qū)別的相關資料,需要的朋友可以參考下
    2022-07-07
  • MySQL時間盲注的五種延時方法實現(xiàn)

    MySQL時間盲注的五種延時方法實現(xiàn)

    MySQL時間盲注主要有五種,sleep(),benchmark(t,exp),笛卡爾積,GET_LOCK() RLIKE正則,本文就主要介紹了這五種方法,感興趣的可以了解一下
    2021-05-05
  • 快速實現(xiàn)MySQL的部署以及一機多實例部署

    快速實現(xiàn)MySQL的部署以及一機多實例部署

    這篇文章主要為大家詳細介紹了快速實現(xiàn)MySQL的部署以及一機多實例部署的相關資料,感興趣的小伙伴們可以參考一下
    2016-04-04
  • 如何解決mysql執(zhí)行導入sql文件速度太慢的問題

    如何解決mysql執(zhí)行導入sql文件速度太慢的問題

    文章介紹了一種通過修改MySQL導出命令參數(shù)來優(yōu)化大SQL文件導入速度的方法,通過對比目標庫和導出庫的參數(shù)值,并使用優(yōu)化后的參數(shù)進行導出,再在目標庫導入,顯著提高了導入速度
    2024-11-11
  • MySql死鎖排查的問題解決

    MySql死鎖排查的問題解決

    本文主要介紹了MySQL死鎖的排查方法和解決方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-12-12
  • Mysql主從GTID與binlog的區(qū)別及說明

    Mysql主從GTID與binlog的區(qū)別及說明

    MySQL GTID(全局事務標識符)與binlog(二進制日志)是搭建主從復制的兩種機制,GTID為每個事務分配唯一標識,確保復制無數(shù)據(jù)沖突或丟失,便于復制配置和管理;binlog記錄所有數(shù)據(jù)庫更改,用于數(shù)據(jù)恢復和復制,GTID基于事務標識
    2024-10-10
  • MYSQL慢查詢和日志實例講解

    MYSQL慢查詢和日志實例講解

    這篇文章主要介紹了MYSQL慢查詢和日志實例講解,有對這方面感興趣的同學可以研究學習下
    2021-02-02

最新評論