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

解析sql語(yǔ)句中l(wèi)eft_join、inner_join中的on與where的區(qū)別

 更新時(shí)間:2013年07月17日 11:43:23   作者:  
以下是對(duì)在sql語(yǔ)句中l(wèi)eft_join、inner_join中的on與where的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以參考下
table a(id, type):
id     type
----------------------------------
1      1        
2      1         
3      2         
table b(id, class):
id    class
---------------------------------
1      1
2      2
sql語(yǔ)句1:select a.*, b.* from a left join b on a.id = b.id and a.type = 1;
sql語(yǔ)句2:select a.*, b.* from a left join b on a.id = b.id where a.type = 1;
sql語(yǔ)句3:select a.*, b.* from a left join b on a.id = b.id and b.class = 1;

sql語(yǔ)句1的執(zhí)行結(jié)果為:
a.id    a.type    b.id    b.class
----------------------------------------
1        1            1        1
2        1            2        2
3        2              

sql語(yǔ)句2的執(zhí)行結(jié)果為:
a.id    a.type    b.id    b.class
----------------------------------------
1        1            1        1
2        1            2        2

sql語(yǔ)句3的執(zhí)行結(jié)果為:
a.id    a.type    b.id    b.class
----------------------------------------
1        1            1        1
2        1           
3        2           
由sql語(yǔ)句1可見(jiàn),left join 中左表的全部記錄將全部被查詢顯示,on 后面的條件對(duì)它不起作用,除非再后面再加上where來(lái)進(jìn)行篩選,這就是sql語(yǔ)句2了;由sql語(yǔ)句3可見(jiàn),on后面的條件中,右表的限制條件將會(huì)起作用。
**************************************************************************
sql語(yǔ)句4:select a.*, b.* from a inner join b on a.id = b.id and a.type = 1;
sql語(yǔ)句5:select a.*, b.* from a inner join b on a.id = b.id where a.type = 1;
sql語(yǔ)句6:select a.*, b.* from a, b where a.id = b.id and a.type = 1;
sql語(yǔ)句7:select a.*, b.* from a, b where a.type = 1 and a.id = b.id;

這四條語(yǔ)句的執(zhí)行結(jié)果一樣,如下:
a.id    a.type    b.id    b.class
----------------------------------------
1        1            1        1
2        1            2        2
由此可見(jiàn),inner join 中on后面的限制條件將全部起作用,這與where的執(zhí)行結(jié)果是一樣的。另外,where語(yǔ)句與inner join確實(shí)能得到相同的結(jié)果,只是效率不同(這個(gè)我沒(méi)有測(cè)試過(guò),不過(guò)我相信這個(gè)結(jié)論)。
但是sql語(yǔ)句6是否比sql語(yǔ)句7的效率要低一些,我沒(méi)有足夠的數(shù)據(jù)量來(lái)測(cè)試,不過(guò)我也相信是如此的。

相關(guān)文章

  • MYSQL 的10大經(jīng)典優(yōu)化案例場(chǎng)景實(shí)戰(zhàn)

    MYSQL 的10大經(jīng)典優(yōu)化案例場(chǎng)景實(shí)戰(zhàn)

    在應(yīng)用開(kāi)發(fā)的早期,數(shù)據(jù)量少,開(kāi)發(fā)人員開(kāi)發(fā)功能時(shí)更重視功能上的實(shí)現(xiàn),隨著生產(chǎn)數(shù)據(jù)的增長(zhǎng),很多SQL語(yǔ)句開(kāi)始暴露出性能問(wèn)題,對(duì)生產(chǎn)的影響也越來(lái)越大,有時(shí)可能這些有問(wèn)題的SQL就是整個(gè)系統(tǒng)性能的瓶頸。本文我們就聊聊MYSQL的優(yōu)化
    2021-09-09
  • MySQL中Next-Key Lock底層原理實(shí)現(xiàn)

    MySQL中Next-Key Lock底層原理實(shí)現(xiàn)

    Next-KeyLock是MySQL InnoDB存儲(chǔ)引擎中的一種鎖機(jī)制,結(jié)合記錄鎖和間隙鎖,用于高效并發(fā)控制并避免幻讀,本文主要介紹了MySQL中Next-Key Lock底層原理實(shí)現(xiàn),感興趣的可以了解一下
    2025-03-03
  • 關(guān)于mysql查詢字符集不匹配問(wèn)題的解決方法

    關(guān)于mysql查詢字符集不匹配問(wèn)題的解決方法

    這篇文章主要給大家介紹了關(guān)于mysql查詢字符集不匹配問(wèn)題的解決方法,文中通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)同樣遇到這個(gè)問(wèn)題的朋友們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08
  • Mysql服務(wù)器的啟動(dòng)與停止(二)

    Mysql服務(wù)器的啟動(dòng)與停止(二)

    Mysql服務(wù)器的啟動(dòng)與停止(二)...
    2006-11-11
  • 安裝配置MySQLMTOP來(lái)監(jiān)控MySQL運(yùn)行性能的教程

    安裝配置MySQLMTOP來(lái)監(jiān)控MySQL運(yùn)行性能的教程

    這篇文章主要介紹了安裝配置MySQLMTOP來(lái)監(jiān)控MySQL運(yùn)行性能的教程,MySQLMTOP具有B/S方式的圖形化操作頁(yè)面,需要的朋友可以參考下
    2015-12-12
  • mysql使用物理備份安裝xtrabackup的詳細(xì)過(guò)程

    mysql使用物理備份安裝xtrabackup的詳細(xì)過(guò)程

    這篇文章主要介紹了mysql使用物理備份安裝xtrabackup的詳細(xì)過(guò)程,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • log引起的mysql不能啟動(dòng)的解決方法

    log引起的mysql不能啟動(dòng)的解決方法

    今天服務(wù)器掛了原來(lái)服務(wù)器的硬盤(pán)進(jìn)行了數(shù)據(jù)轉(zhuǎn)移 弄到mysql的時(shí)候發(fā)現(xiàn)里面log日志文件高達(dá)900MB
    2008-07-07
  • MySQL筆記之索引的使用

    MySQL筆記之索引的使用

    索引是創(chuàng)建在表上的,對(duì)數(shù)據(jù)庫(kù)表中一列或多列的值進(jìn)行排序的一種結(jié)構(gòu)其作用主要在于提高查詢的速度,降低數(shù)據(jù)庫(kù)系統(tǒng)的性能開(kāi)銷(xiāo)
    2013-05-05
  • mysql SELECT語(yǔ)句去除某個(gè)字段的重復(fù)信息

    mysql SELECT語(yǔ)句去除某個(gè)字段的重復(fù)信息

    mysql SELECT語(yǔ)句去除某個(gè)字段的重復(fù)信息,需要的朋友可以收藏下。
    2010-04-04
  • MySQL創(chuàng)建高性能索引的全步驟

    MySQL創(chuàng)建高性能索引的全步驟

    這篇文章主要給大家介紹了關(guān)于MySQL創(chuàng)建高性能索引的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05

最新評(píng)論

苗栗县| 潜江市| 广西| 六盘水市| 怀集县| 榆林市| 蓬莱市| 河池市| 额济纳旗| 遵义县| 大英县| 纳雍县| 安康市| 藁城市| 宣武区| 平凉市| 宝坻区| 读书| 阜康市| 克东县| 蓬莱市| 故城县| 左云县| 乌鲁木齐市| 达拉特旗| 南陵县| 临泉县| 富蕴县| 托里县| 莱阳市| 九台市| 洮南市| 本溪| 武宁县| 三明市| 宣武区| 治多县| 夏邑县| 繁峙县| 郯城县| 宣化县|