大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 實例解析MySQL自連接查詢

實例解析MySQL自連接查詢

更新時間:2021-02-01 17:32:47 來源:動力節點 瀏覽2615次

自連接是指使用表的別名實現表與其自身連接的查詢方法。一般情況下,在MySQL數據庫中很多問題的解決,需要我們進行多表查詢,將兩表中某些數據聯結,來得到我們所需的數據。但有些情況下,我們需要對一張表內的數據,進行一些對比,或者是比較,獲得各列層次關系,通過一般的SQL寫法,可能需要通過寫多個子查詢的方式才能解決。但是用MySQL自連接查詢可以輕松解決,所以通俗來理解的話,MySQL自連接查詢就是以類似多表對比的方式,實現對同一張表內數據進行復雜的關系表示或關系處理。

我們可以結合實際例子來看,加深我們對MySQL自連接查詢的理解。

示例1:

這是一張成績表score

現在要查詢001課程>= 002課程的學生的學號,這時就能用自連接查詢。

SELECT a.學號,a.成績 as score_001,b.成績 as score_002

from score a ,score b

where a.學號=b.學號

and a.課程號 = 001

and b.課程號 = 002

and a.成績>=b.成績;

輸出結果:

結果只有003號學生滿足條件,符合上表信息。

或許單一的例子不足以說明什么,我們再來看一個MySQL自連接查詢的例子:

示例2:

成績表score2

使用SQL查詢出所有至少連續3次出現的成績

問題拆解:什么是連續3次出現。成績表按學號順序排列(如果不是,可以通過窗口函數排序等方式)所以每一個學號之間間隔都是1,a(004)=b(005)-1,b(005)=c(006)-1,abc3個學號就為連續學號。那么只要滿足兩個條件:

1.3個連續學號

2.對應成績相等。

select a.成績 as 答案

from score2 a,score2 b,score2 c

where a.學號 = b.學號-1

and b.學號 = c.學號-1

and a.成績 = b.成績

and b.成績 = c.成績;

輸出結果:


        綜合上面的兩個例子,我們不難看出:自連接其實是一種特殊的內連接,它是指相互連接的表在物理上為同一張表,但可以在邏輯上分為兩張表。也就是說在一個連接查詢中,涉及到的兩個表本質上其實是同一個表,但為了區別該表的每一次出現,需要為表定義一個別名,這種表連接自身別名的表的連接我們就稱之為自連接查詢。

Mysql自連接查詢是MySQL中連接查詢最主要的查詢方式,主要包括內連接、外連接和交叉連接等。本文我們所講的自連接查詢也是其中的內連接的一種特殊方式,想要掌握各種MySQL連接查詢,可以觀看本站的MySQL教程,學習新的知識。

 

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 97国产精品国产品国语字幕 | 99影视在线视频免费观看 | 国产综合婷婷 | 欧美视频性 | 日韩国产成人精品视频人 | 国产乱码一区二区三区 | 久久久精品国产免费观看同学 | 69美女福利视频在线观看 | 欧美日韩亚洲精品一区 | 日本手机在线视频 | 日操操| 成人亚洲欧美 | 北条麻妃手机在线观看 | 国产精品国产三级国产a | 老司机午夜性大片 | 农村寡妇一级毛片免费播放 | 泰国一级毛片aaa下面毛多 | 成人性生活免费视频 | 夜夜躁日日躁狠狠 | 成人国产精品免费网站 | 国产福利在线免费 | 免费观看毛片 | 国产精品日韩欧美一区二区三区 | 亚洲免费视频一区二区三区 | 在线97| 色综合天天综久久久噜噜噜久久〔 | 欧美xingai| 国产精品丝袜在线 | 色综合天天综合网看在线影院 | 亚洲偷图色综合色就色 | 国产一级毛片免 | 亚洲乱码在线视频 | 伊人久久欧美综合精品 | 久久99影院网久久久久久 | 视频黄在线观看 | 久操视频网 | 亚洲乱码一区二区三区国产精品 | 日本一区二区三 | 亚洲视频在线a视频 | 国产精品嫩草研究所永久网址 | 欧美特级毛片aaaa |