最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL之多表查詢自連接方式

 更新時間:2024年09月05日 09:18:49   作者:歲歲歲平安  
這篇文章主要介紹了MySQL之多表查詢自連接方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

一、引言

自連接,顧名思義就是自己連接自己。

自連接的語法結(jié)構(gòu):

表 A 別名 A join 表 A 別名 B ON 條件 ...;

注意:

  • 1、這種語法有一個關(guān)鍵字:join
  • 2、自連接查詢可以是內(nèi)連接的語法,可以是外連接的語法(當(dāng)然包括左外連接和右外連接)

接下來去工具 DataGrip 通過兩個需求去演示一下 自連接查詢 的語法。

二、實操

(0)兩張表的結(jié)構(gòu)以及數(shù)據(jù)展示

  • 員工表 emp

  • 部門表 dept

(1)查詢員工及其所屬領(lǐng)導(dǎo)的名字

1、分析

在表 emp 中沒有直接的表示出某某的直屬領(lǐng)導(dǎo)是誰,只有一個所屬領(lǐng)導(dǎo)id號(managerid)

而對于一個企業(yè)的領(lǐng)導(dǎo),它也是企業(yè)的員工。

表結(jié)構(gòu):emp。

單靠單表查詢是不可能完成所要的需求的。所以要對自己進(jìn)行子連接查詢。

把emp看成兩張表:員工表和領(lǐng)導(dǎo)表(仔細(xì)深思一下)

這就是它們之間的編寫思路

2、編寫SQL語句

/*類似于內(nèi)連接,有null 的值時沒有顯示*/
SELECT a.name,b.name FROM emp AS a JOIN emp AS b WHERE a.managerid=b.id;

(2)直詢所有員工emp及其領(lǐng)導(dǎo)的名字emp ,如果員工沒有領(lǐng)導(dǎo),也需要查詢出來。

1、分析

如果這個員工的字段 managerid = null ,也需要把這個員工查詢出來。

這時只能用到外連接

因為內(nèi)連接只能查詢到交集的數(shù)據(jù),外連接才會包含左表或者右表的數(shù)據(jù)

表結(jié)構(gòu):emp a , emp b

2、編寫SQL語句

/*查出直屬領(lǐng)導(dǎo)為 null 也要顯示*/
SELECT a.name AS '員工',b.name AS '領(lǐng)導(dǎo)' FROM emp AS a LEFT OUTER JOIN emp AS b ON a.managerid=b.id;

這樣就通過兩個自連接查詢完成兩個需求。

在自連接查詢的時候,一定注意要給表名起別名。

要不然我們會不清楚條件,以及返回的字段到底是哪一張表當(dāng)中的字段。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mysql最新版8.0.17解壓版安裝教程

    mysql最新版8.0.17解壓版安裝教程

    這篇文章主要為大家詳細(xì)介紹了最新版mysql 8.0.17 解壓版安裝教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • mysql 5.7.18 winx64密碼修改

    mysql 5.7.18 winx64密碼修改

    這篇文章主要介紹了mysql 5.7.18 winx64安裝完成后如何對密碼進(jìn)行修改,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • windows下在一臺機(jī)器上安裝兩個MYSQL數(shù)據(jù)庫的方法

    windows下在一臺機(jī)器上安裝兩個MYSQL數(shù)據(jù)庫的方法

    正常安裝第一個mysql,在控制面板里停止第一個mysql服務(wù),將C:\Program Files\MySQL目錄下的所有目錄和文件copy到另外一個路徑,我這里是copy到E盤
    2013-10-10
  • MySQL pt-query-digest從安裝到實戰(zhàn)的慢查詢優(yōu)化實戰(zhàn)指南

    MySQL pt-query-digest從安裝到實戰(zhàn)的慢查詢優(yōu)化實戰(zhàn)指南

    本文介紹了pt-query-digest工具的安裝、配置、核心原理和實戰(zhàn)應(yīng)用,包括慢查詢分析步驟、常見場景命令模板及使用技巧,通過合理配置和分析,能夠有效提升MySQL性能,感興趣的朋友跟隨小編一起看看吧
    2026-04-04
  • MySQL中的樂觀鎖,悲觀鎖和MVCC全面解析

    MySQL中的樂觀鎖,悲觀鎖和MVCC全面解析

    這篇文章主要介紹了MySQL中的樂觀鎖和悲觀鎖和MVCC全面解析的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2021-01-01
  • mysql列轉(zhuǎn)行以及年月分組實例

    mysql列轉(zhuǎn)行以及年月分組實例

    下面小編就為大家?guī)硪黄猰ysql列轉(zhuǎn)行以及年月分組實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • MySQL如何選擇合適的索引

    MySQL如何選擇合適的索引

    這篇文章主要介紹了MySQL如何選擇合適的索引,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • Mysql5.7中使用group concat函數(shù)數(shù)據(jù)被截斷的問題完美解決方法

    Mysql5.7中使用group concat函數(shù)數(shù)據(jù)被截斷的問題完美解決方法

    前幾天在項目中遇到一個問題,使用 GROUP_CONCAT 函數(shù)select出來的數(shù)據(jù)被截斷了,最長長度不超過1024字節(jié),開始還以為是navicat客戶端自身對字段長度做了限制的問題。后來查找出原因,解決方法大家跟隨腳本之家小編一起看看吧
    2018-03-03
  • MySQL執(zhí)行SQL文件的常見場景與方法

    MySQL執(zhí)行SQL文件的常見場景與方法

    MySQL?作為世界上最流行的開源關(guān)系型數(shù)據(jù)庫管理系統(tǒng),在日常開發(fā)和運維工作中扮演著重要角色,本文主要介紹了MySQL?執(zhí)行?SQL?文件的主要方法與場景,希望對大家有所幫助
    2025-06-06
  • 通過MySQL慢查詢優(yōu)化MySQL性能的方法講解

    通過MySQL慢查詢優(yōu)化MySQL性能的方法講解

    今天小編就為大家分享一篇關(guān)于通過MySQL慢查詢優(yōu)化MySQL性能的方法講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03

最新評論

万荣县| 浪卡子县| 陇西县| 滦南县| 苏尼特右旗| 西充县| 丰城市| 湘阴县| 台江县| 措勤县| 台湾省| 合肥市| 普陀区| 文山县| 睢宁县| 黑龙江省| 孟州市| 交口县| 丹东市| 湘潭市| 南投市| 高青县| 大足县| 巨野县| 易门县| 遂川县| 昌平区| 南丰县| 天峨县| 湘潭市| 陆良县| 肥城市| 漾濞| 溆浦县| 宝清县| 辽中县| 青海省| 安国市| 双鸭山市| 博白县| 玉屏|