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

SQL語句多表聯(lián)查的實現(xiàn)方法示例

 更新時間:2022年04月15日 16:25:02   作者:雜亂無章-Jessues  
多表聯(lián)合檢索可以通過連接運(yùn)算來完成,而連接運(yùn)算又可以通過廣義笛卡爾積后再進(jìn),下面這篇文章主要給大家介紹了關(guān)于SQL語句多表聯(lián)查實現(xiàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

最近面試實習(xí)生,發(fā)現(xiàn)一般來說,公司喜歡通過一些 SQL 語句來考察你對數(shù)據(jù)庫的使用熟不熟悉。所以我來總結(jié)一下我在面試中遇到多表聯(lián)查是怎么聯(lián)查的。

三表聯(lián)查

首先來說多表聯(lián)查的一些知識點。

多表是指等于或者多余三個表以上的數(shù)據(jù)庫查詢。多表聯(lián)查的類型有:

  • 內(nèi)連接:join,inner join
  • 外連接:left join,left outer join,right join,right outer join,union
  • 交叉連接:cross join

解釋一下,外連接是指將兩個表進(jìn)行合并,如果有不相同的列,那么另外一個表將顯示 null。而內(nèi)連接是指內(nèi)連接查詢操作列出與連接條件匹配的數(shù)據(jù)行,它使用比較運(yùn)算符比較被連接列的列值。也就是說,運(yùn)算符可以是 =,也可以是 >、>=、<=、<、!>、!<和<>。

內(nèi)連接

假如我們有兩個表

student.table
id name clsId
1 ?tjc ? ?1
2 ?zhangsan ? ?2
3 李四 ? ?3
4 ?劉五 ? ?4
5 ?黃六 ? ?5
class.table
clsId clsName
1 ? ? ? ?軟件1班
2 ? ? ? ?軟件2班
3 ? ? ? ?軟件3班
4 ? ? ? ?軟件4班

為了查詢上面兩個表,我們可以使用兩種查詢語句:

select * from student as s,class as as c where s.clsId = class.clsId
select * from student as s inner join class as c on s.clsId = class.clsId

兩種結(jié)果都是:

id name clsId clsId clsName

1  tjc    1        1        軟件1班

2  zhangsan    2        2        軟件2班

3 李四    3        3        軟件3班

4  劉五    4        4        軟件4班

外連接

外連接跟內(nèi)連接不同之處,如果查詢的表中,如果通過關(guān)聯(lián)標(biāo)示符中,一個表的數(shù)據(jù)而另外一個表沒有響應(yīng)的數(shù)據(jù)項,那么就顯示 null。

左連接

查詢 SQL 語句為:

select * from student as s left join class as c on s.clsId = c.clsId 

以左表為基準(zhǔn),如果右表沒有相應(yīng)的數(shù)據(jù)項,那么右表顯示為 null。

右連接

select * from student as s right join class as c on s.clsId = c.clsId 

以右表為基準(zhǔn),如果左表沒有相應(yīng)的數(shù)據(jù)項,那么左表顯示為 null。

全連接

select * from student as s full outer join class c on s.clsId = c.clsId 

完整外部聯(lián)接返回左表和右表中的所有行。當(dāng)某行在另一個表中沒有匹配行時,則另一個表的選擇列表列包含空值。如果表之間有匹配行,則整個結(jié)果集行包含基表的數(shù)據(jù)值。

交叉連接

交叉聯(lián)接返回左表中的所有行,左表中的每一行與右表中的所有行組合。交叉聯(lián)接也稱作笛卡爾積。

select * from student as s cross join class as c order by s.id

附:多表聯(lián)合查詢訓(xùn)練

示例:求既學(xué)過“001”號課又學(xué)過 “002”號課的所有學(xué)生的學(xué)號

Select S1.S# From SC S1, SC S2
Where S1.S# = S2.S# and S1.C#=‘001'
and S2.C#=‘002 ;

示例:求“001”號課成績比“002”號課成績高的所有學(xué)生的學(xué)號

Select S1.S# From SC S1, SC S2
Where S1.S# = S2.S# and S1.C#=‘001'
and S2.C#=‘002' and S1.Score > S2.Score;

總結(jié)

到此這篇關(guān)于SQL語句多表聯(lián)查實現(xiàn)的文章就介紹到這了,更多相關(guān)SQL語句多表聯(lián)查內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 多次執(zhí)行mysql_fetch_array()的指針歸位問題探討

    多次執(zhí)行mysql_fetch_array()的指針歸位問題探討

    多次執(zhí)行mysql_fetch_array(),在第二次執(zhí)行的時候,如果不加處理,就不會輸出任何內(nèi)容,這種情況下只需要對循環(huán)指針進(jìn)行復(fù)位即可,感興趣的朋友可以了解下啊,或許對你有所幫助
    2013-01-01
  • 詳解MySQL 慢查詢

    詳解MySQL 慢查詢

    這篇文章主要介紹了MySQL 慢查詢的相關(guān)資料,文中講解非常細(xì)致,幫助大家更好的理解和學(xué)習(xí)MySQL,感興趣的朋友可以了解下
    2020-07-07
  • Mysql觸發(fā)器語法解讀(附帶簡單實用例子)

    Mysql觸發(fā)器語法解讀(附帶簡單實用例子)

    這篇文章主要介紹了Mysql觸發(fā)器語法解讀(附帶簡單實用例子),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • MySQL 5.7新特性介紹

    MySQL 5.7新特性介紹

    這篇文章主要為大家詳細(xì)介紹了MySQL 5.7新特性,了解一下MySQL 5.7的部分新功能,需要的朋友可以參考下
    2016-06-06
  • MySQL中數(shù)據(jù)庫優(yōu)化的常見sql語句總結(jié)

    MySQL中數(shù)據(jù)庫優(yōu)化的常見sql語句總結(jié)

    這篇文章主要為大家總結(jié)了一些MySQL中數(shù)據(jù)庫優(yōu)化的常見sql語句,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)MySQL有一定幫助,需要的可以參考一下
    2022-08-08
  • MySQL連接查詢實例詳解

    MySQL連接查詢實例詳解

    這篇文章主要介紹了MySQL連接查詢,結(jié)合實例形式總結(jié)分析了mysql表的創(chuàng)建、內(nèi)連接、左連接、右連接、復(fù)合條件連接查詢等相關(guān)操作技巧,需要的朋友可以參考下
    2018-06-06
  • MySQL count(1)、count(*)、count(字段)的區(qū)別

    MySQL count(1)、count(*)、count(字段)的區(qū)別

    COUNT在數(shù)據(jù)庫行數(shù)統(tǒng)計中被廣泛使用,那么你知道MySQL count(1)、count(*)、count(字段)的區(qū)別嗎,本文就想的介紹一下,感興趣的可以了解一下
    2021-12-12
  • MySQL數(shù)據(jù)讀寫分離MaxScale相關(guān)配置

    MySQL數(shù)據(jù)讀寫分離MaxScale相關(guān)配置

    這篇文章主要為大家介紹了MySQL數(shù)據(jù)讀寫分離MaxScale相關(guān)配置詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • MySQL 5.7.19安裝目錄下創(chuàng)建my.ini文件的方法

    MySQL 5.7.19安裝目錄下創(chuàng)建my.ini文件的方法

    這篇文章給大家簡單介紹了MySQL 5.7.19安裝目錄下創(chuàng)建my.ini文件的方法,需要的的朋友參考下吧
    2017-08-08
  • mysql xtrabackup 備份恢復(fù)實現(xiàn)分享

    mysql xtrabackup 備份恢復(fù)實現(xiàn)分享

    Xtrabackup是由percona提供的mysql數(shù)據(jù)庫備份工具,據(jù)官方介紹,這也是世界上惟一一款開源的能夠?qū)nnodb和xtradb數(shù)據(jù)庫進(jìn)行熱備的工具
    2012-11-11

最新評論

曲水县| 渝中区| 汝城县| 英德市| 武安市| 呈贡县| 白水县| 咸阳市| 丹凤县| 墨竹工卡县| 如皋市| 东乌珠穆沁旗| 肇州县| 文水县| 霍州市| 杭锦后旗| 诸暨市| 宁城县| 叶城县| 茶陵县| 上虞市| 全南县| 长兴县| 沈阳市| 福建省| 宜春市| 崇州市| 田林县| 瓦房店市| 兴宁市| 若尔盖县| 屯昌县| 新干县| 东安县| 子洲县| 孙吴县| 龙州县| 咸宁市| 靖边县| 东海县| 紫阳县|