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

Mysql中l(wèi)eft join后用on與where的區(qū)別全面解析

 更新時間:2026年01月16日 09:28:44   作者:奮斗的狍子007  
ON條件用于定義連接條件,確保左表的所有行都包含在結(jié)果集中,而WHERE條件則在連接操作后過濾結(jié)果集,可能會排除一些原本應(yīng)該包含的行,了解這兩者的區(qū)別對于編寫準確的SQL查詢至關(guān)重要,下面給大家講解Mysql中l(wèi)eft join后用on與where的區(qū)別,感興趣的朋友一起看看吧

一、前言

  前幾天項目中,寫SQL時本想通過 A left B join on and 后面的條件來使查出的兩條記錄變成一條,奈何發(fā)現(xiàn)還是有兩條。在此記錄一下,on與where的區(qū)別。

二、ON

原始數(shù)據(jù)展示

SELECT t1.*,t2.* FROM  t_test_staff t1 left join t_test_department t2 on t1.departmentId = t2.id and t;

查詢結(jié)果

ON后面跟and,左表條件

SELECT t1.*,t2.* FROM  t_test_staff t1 left join t_test_department t2 on t1.departmentId = t2.id and t1.name = '員工1';

查詢結(jié)果

ON后面跟and,右表條件

SELECT t1.*,t2.* FROM  t_test_staff t1 left join t_test_department t2 on t1.departmentId = t2.id and t2.departmentName = '研發(fā)部';

查詢結(jié)果

  ON 條件用于定義兩個表之間的連接條件,它決定了哪些行會被連接在一起。在 LEFT JOIN 中,ON 條件決定了右表(被連接的表)中的哪些行會被匹配到左表(主表)的行。

  在這個例子中,Table1 中的每一行都會出現(xiàn)在結(jié)果集中,無論 Table2 中是否有匹配的行。如果 Table2 中有匹配的行,則這些行的數(shù)據(jù)會被包含進來;如果沒有匹配的行,則 Table2 的列會顯示為 NULL。

三、where

on后面跟where,左表條件

SELECT t1.*,t2.* FROM  t_test_staff t1 left join t_test_department t2 on t1.departmentId = t2.id where t1.name = '員工1';

查詢結(jié)果

on后面跟where,右表條件

SELECT t1.*,t2.* FROM  t_test_staff t1 left join t_test_department t2 on t1.departmentId = t2.id where t2.departmentName = '研發(fā)部';

查詢結(jié)果

  WHERE 條件用于過濾結(jié)果集,它在連接操作之后應(yīng)用。這意味著 WHERE 條件會進一步篩選已經(jīng)通過 ON 條件連接好的結(jié)果集。

  在這個例子中,LEFT JOIN 依然會先執(zhí)行,將 Table1 中的每一行與 Table2 中的匹配行連接起來(如果有的話)。然后,WHERE 條件會過濾掉那些 Table2.some_column 為 NULL 的行。

  由于 LEFT JOIN 保證了 Table1 中的每一行都會出現(xiàn)在結(jié)果集中,WHERE 條件實際上將結(jié)果集轉(zhuǎn)換為了一個類似于 INNER JOIN 的結(jié)果集,因為它排除了所有 Table2 中沒有匹配行的 Table1 行(即 Table2 列值為 NULL 的行)。

四、總結(jié)

  ON 條件:用于定義連接條件,決定如何連接兩個表。在 LEFT JOIN 中,它會保留左表中的所有行,并根據(jù)條件匹配右表中的行。

  WHERE 條件:用于過濾結(jié)果集,它在連接操作之后應(yīng)用。在 LEFT JOIN 中,使用 WHERE 條件可以進一步篩選結(jié)果集,但需要注意它會排除所有不滿足條件的行,包括那些由于 LEFT JOIN 而產(chǎn)生的 NULL 值行。

到此這篇關(guān)于Mysql中l(wèi)eft join后用on與where的區(qū)別全面解析的文章就介紹到這了,更多相關(guān)mysql left join on與where區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql 設(shè)置自動創(chuàng)建時間及修改時間的方法示例

    mysql 設(shè)置自動創(chuàng)建時間及修改時間的方法示例

    這篇文章主要介紹了mysql 設(shè)置自動創(chuàng)建時間及修改時間的方法,結(jié)合實例形式分析了mysql針對創(chuàng)建時間及修改時間相關(guān)操作技巧,需要的朋友可以參考下
    2019-09-09
  • Windows下mysql5.7.10安裝配置方法圖文教程

    Windows下mysql5.7.10安裝配置方法圖文教程

    這篇文章主要為大家詳細介紹了Windows上mysql5.7.10安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • MySql創(chuàng)建帶解釋的表及給表和字段加注釋的實現(xiàn)代碼

    MySql創(chuàng)建帶解釋的表及給表和字段加注釋的實現(xiàn)代碼

    這篇文章主要介紹了MySql創(chuàng)建帶解釋的表以及給表和字段加注釋的實現(xiàn)方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-12-12
  • 一步步教你在Navicat上如何停止正在運行的MYSQL語句

    一步步教你在Navicat上如何停止正在運行的MYSQL語句

    很多時候我們會提交一些耗時比較長的sql,可能出現(xiàn)mysql服務(wù)器內(nèi)存或者CPU暴增,引起報警,甚至影響其他業(yè)務(wù),下面這篇文章主要給大家介紹了關(guān)于在Navicat上如何停止正在運行的MYSQL語句的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • Mysql分庫分表實現(xiàn)方式

    Mysql分庫分表實現(xiàn)方式

    這篇文章詳細介紹了分庫分表的概念,原因,如何實現(xiàn),以及不同中間件的優(yōu)缺點,同時,也介紹了如何進行數(shù)據(jù)遷移和擴容縮容,以及如何處理分庫分表后的ID和事務(wù)問題
    2025-02-02
  • mysql用戶管理和權(quán)限設(shè)置方式

    mysql用戶管理和權(quán)限設(shè)置方式

    這篇文章主要介紹了mysql用戶管理和權(quán)限設(shè)置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • 點贊功能使用MySQL還是Redis

    點贊功能使用MySQL還是Redis

    本文主要介紹了點贊功能使用MySQL還是Redis,這是最近面試時被問到的1道面試題,本篇博客對此問題進行總結(jié)分享,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • MySQL中獲取當前時間格式的方法匯總

    MySQL中獲取當前時間格式的方法匯總

    在MySQL數(shù)據(jù)庫開發(fā)中,獲取時間是一個常見的需求,MySQL提供了多種方法來獲取當前日期、時間和時間戳,并且可以對時間進行格式化、計算和轉(zhuǎn)換,以下是一些常用的MySQL時間函數(shù)及其示例,需要的朋友可以參考下
    2024-06-06
  • 如何批量生成MySQL不重復(fù)手機號大表實例代碼

    如何批量生成MySQL不重復(fù)手機號大表實例代碼

    這篇文章主要給大家介紹了關(guān)于如何批量生成MySQL不重復(fù)手機號大表的相關(guān)資料,,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • MySQL實現(xiàn)雪花Id函數(shù)

    MySQL實現(xiàn)雪花Id函數(shù)

    相比UUID無序生成的id而言,雪花算法是有序的,而且都是由數(shù)字組成,本文主要介紹了MySQL實現(xiàn)雪花Id函數(shù),具有一定的參考價值,感興趣的可以了解一下
    2023-11-11

最新評論

正安县| 福贡县| 上饶县| 乐业县| 黄龙县| 巴青县| 犍为县| 贵港市| 湛江市| 团风县| 永州市| 公安县| 海林市| 呼玛县| 通化县| 富蕴县| 青岛市| 定陶县| 乌海市| 宜川县| 张家港市| 丰都县| 浦县| 巨野县| 合阳县| 建德市| 尼玛县| 东宁县| 济阳县| 离岛区| 平顺县| 杨浦区| 高州市| 马尔康县| 莱芜市| 临洮县| 天台县| 南乐县| 临澧县| 延庆县| 万宁市|