小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

sql語(yǔ)句中l(wèi)eft join、inner join中的on與where的區(qū)別

 jlqin717 2010-10-10

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 中左表的全部記錄將全部被查詢(xún)顯示,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ò)我也相信是如此的。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多