一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫 - Mysql - MySQL系列多表連接查詢92及99語法示例詳解教程

MySQL系列多表連接查詢92及99語法示例詳解教程

2021-11-26 16:52數(shù)據(jù)分析與統(tǒng)計學(xué)之美 Mysql

這篇文章主要為大家介紹了MySQL系列多表連接查詢92及99語法示例詳解教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

前面兩天帶著大家換了一個口味,帶著大家學(xué)習(xí)了pyecharts的原理和部分圖形制作。今天我們繼續(xù)回歸帶你學(xué)mysql系列,帶著大家繼續(xù)學(xué)習(xí)mysql數(shù)據(jù)庫。

多表查詢是數(shù)據(jù)分析師日常工作中一定會使用到的一個知識點,可見它的重要程度有多大。今天這個文章全面總結(jié)了mysql多表查詢的幾種情況,你知道m(xù)ysql的92語法和99語法嗎?你知道等值連接和非等值連接嗎?不要覺得某些知識點用的少,就可以不知道,其實不然,至少別人寫出來后,你要知道是什么意思。

1.笛卡爾積現(xiàn)象

MySQL系列多表連接查詢92及99語法示例詳解教程

結(jié)果如下:

MySQL系列多表連接查詢92及99語法示例詳解教程

分析如下:
  上述結(jié)果肯定是不對的,左表中每一個人都有4個男朋友,仔細(xì)觀察這4條記錄,正好是左表每一條記錄和右表一一匹配后的結(jié)果。
  笛卡爾積現(xiàn)象產(chǎn)生的原因:兩張表沒有有效的連接條件。既然你沒有連接條件,本表中的第一行肯定是能和另外表中的所有行進行一一匹配,同理,本表中的第二行肯定是能和另外表中的所有行進行一一匹配,以此類推,本表中的最后一行m也可以和另外表中的所有行進行一一匹配。若另外一張表有n行,那么最后顯示的行數(shù),肯定就是m*n行了。
  如果不想產(chǎn)生笛卡爾積現(xiàn)象,就需要添加有效的表連接條件。拿上述例子來說,左表boyfriend_id只有和右邊id相等時,才代表她們的男朋友。

添加表連接條件后:

MySQL系列多表連接查詢92及99語法示例詳解教程

可以看到,笛卡爾積最終產(chǎn)生的記錄數(shù)是兩張表中各自數(shù)據(jù)的乘積,當(dāng)沒有使用連接查詢的時候,如果兩張表中數(shù)據(jù)特別大的時候,將會撐爆你的內(nèi)存,那是很可怕的,因此我們要學(xué)會使用連接查詢。

2.連接查詢知識點概括

1)什么是連接查詢?

在實際開發(fā)中,大多數(shù)的情況下都不是從單表中查詢數(shù)據(jù),一般都是多張表聯(lián)合查詢?nèi)〕鲎罱K的結(jié)果。也就是說:實際業(yè)務(wù)中也是一個業(yè)務(wù)由多個表構(gòu)成,不同的信息存儲在不同的表中,如果我們想要獲取的信息來自多張表,此時你就需要使用連接查詢。

2)連接查詢的分類

① 按年代分類

mysql中不支持全連接(full join),一般使用的是union關(guān)鍵字完成全連接的功能。mysql中交叉連接是cross join,用的較少,我們也不用關(guān)心。

sq192標(biāo)準(zhǔn):僅支持內(nèi)連接;sq199標(biāo)準(zhǔn)【推薦】:僅僅支持內(nèi)連接+外連接(僅支持左外和右外)+交叉連接; ② 按功能分類 內(nèi)連接:等值連接、非等值連接、自連接;外連接:左外連接、右外連接、全外連接(full join);

3.內(nèi)連接講解

原始數(shù)據(jù)如下:

MySQL系列多表連接查詢92及99語法示例詳解教程

1)等值連接:最大特點是,連接條件為等量關(guān)系。

習(xí)題:查詢員工名和對應(yīng)的部門名;

sql92語法如下:(太老了,一般不用,看到了知道什么意思就行。)

MySQL系列多表連接查詢92及99語法示例詳解教程

sql99語法:(常用的)

MySQL系列多表連接查詢92及99語法示例詳解教程

2)sql92語法和sql99語法的區(qū)別。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
-- sql92語法
 select ename,dname
 from emp,dept
 where emp.deptno=dept.deptno;
 
-- sql99語法
select ename,dname
from emp (inner)join dept
on emp.deptno=dept.deptno;
 
-- sql92語法和sql99語法的區(qū)別
1)逗號(",")換成(inner)join
2)where換成on
注:inner可以省略,寫上inner可以增加代碼的可讀性。
 
--sql99語法的優(yōu)勢
表連接和后面的where條件篩選,分離開來。
對于sql92語法來說,表連接用的是wherewhere篩選用的也是where,混淆在一起不清不楚。

3)非等值連接:最大特點是,連接條件為非等量關(guān)系。

MySQL系列多表連接查詢92及99語法示例詳解教程

習(xí)題:找出每個員工的工資等級,要求顯示員工名、工資、工資等級。

MySQL系列多表連接查詢92及99語法示例詳解教程

4)自連接:最大特點是,一張表看作兩張表。

什么叫做一張表看作兩張表呢?也就是說,自連接是同一張表之間的連接,連接條件就是這張表中的不同字段。

人和機器的最大不同,就在于人有判斷能力,你知道區(qū)分使用一張表的不同字段,但是機器不知道,都是同一張表,字段名也都是相同的。那么,機器怎么才能區(qū)分哪個表是哪個表(對于同一張表來說)。

這就需要起別名了。對于同一張表來說,我給它取兩個名字,一個是a,一個是b,這樣機器就能很好的區(qū)分了。當(dāng)取a表中的字段,就是"a.字段",取b表中的字段,就是"b.字段"。

習(xí)題:找出每個員工的上級領(lǐng)導(dǎo),要求顯示員工名和對應(yīng)的領(lǐng)導(dǎo)名。

MySQL系列多表連接查詢92及99語法示例詳解教程

4.外連接講解

原始數(shù)據(jù)如下:

MySQL系列多表連接查詢92及99語法示例詳解教程

1)什么是外連接,和內(nèi)連接有什么區(qū)別?

① 內(nèi)連接

假設(shè)a和b表進行連接,使用內(nèi)連接的話,凡是a表和b表能夠匹配上的記錄,就會查詢出來,這就是內(nèi)連接。ab兩張表沒有主副之分,兩張表是平等的。

② 外連接

假設(shè)a和b表進行連接,使用外連接的話,ab兩張表中有一張表是主表,一張表是副表,主要查詢主表中的數(shù)據(jù),捎帶著查詢副表。當(dāng)副表中的數(shù)據(jù)沒有和主表中的數(shù)據(jù)匹配上,副表自動模擬出null與之匹配。

外連接最重要的特點是:主表的數(shù)據(jù),無條件的全部查詢出來。

2)外連接的分類

左連接有右連接的寫法,右連接也會有對應(yīng)的左連接的寫法。因此,我們在學(xué)習(xí)mysql的過程中,沒有必要既學(xué)習(xí)左連接又學(xué)習(xí)右連接。

左外連接(左連接):表示左邊的這張表是主表。右外連接(右連接):表示右邊的這張表是主表。 3)案例分析

MySQL系列多表連接查詢92及99語法示例詳解教程

習(xí)題:找出哪個部門沒有員工?

MySQL系列多表連接查詢92及99語法示例詳解教程

以上就是mysql系列多表連接查詢92及99語法示例詳解教程的詳細(xì)內(nèi)容,更多關(guān)于mysql查詢語法的資料請關(guān)注服務(wù)器之家其它相關(guān)文章!

原文鏈接:https://huang-tong-xue.blog.csdn.net/article/details/106932735

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 青青在线香蕉国产精品 | 四虎在线视频免费观看视频 | 亚洲啊v | 香蕉久久高清国产精品免费 | 日本不卡在线视频高清免费 | bt天堂在线最新版www | 506070老熟肥妇bbwxx视频 500第一精品 | 国产精品一级香蕉一区 | 欧产日产国产精品专区 | 好紧好爽再叫浪一点点潘金莲 | 亚洲欧洲日产国码天堂 | h肉动漫在线视频无修无遮挡 | 欧美成人tv在线观看免费 | 日本高清有码视频 | 日本黄色影院 | 农村妇女野战bbxxx农村妇女 | 男人摸女人下面 | 超级乱淫伦短篇在车上 | 精品视频在线播放 | 草草影院在线 | 91大片淫黄大片在线天堂 | 日本一卡二卡3卡四卡无卡网址 | 四虎网址 | 亚洲乱码一二三四区国产 | 成人影院入口 | 国产精品午夜性视频网站 | 视频一区二区国产无限在线观看 | japanesepooping脱粪 | 婷婷丁香视频 | 国产成人啪精品午夜在线播放 | 午夜精品久久久久久久99 | 国内揄拍国内精品久久 | 9966国产精品视频 | 国产精品女同久久免费观看 | 成人在线免费观看视频 | 亚洲国产精品久久精品成人网站 | 丝袜老师好湿好紧我要进去了 | 欧美作爱福利免费观看视频 | 欧美一卡二卡科技有限公司 | 日本免费一区二区三区四区五六区 | 日日免费视频 |