亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

詳解mysql 使用left join添加where條件的問(wèn)題分析

瀏覽:10日期:2023-10-05 15:38:47
當(dāng)前需求:

有g(shù)roup和factor兩張表,一個(gè)group對(duì)應(yīng)多個(gè)factor,現(xiàn)在想查詢有效的group和對(duì)應(yīng)的有效的factor,兩個(gè)表都有isDel邏輯刪除標(biāo)志。

詳解mysql 使用left join添加where條件的問(wèn)題分析

最開(kāi)始的錯(cuò)誤寫法一

SELECT g.*,f.* FROM groups g LEFT JOIN factor f ON f.groupId = g.id where g.isDel=0 and f.isDel=0

LEFT JOIN 關(guān)鍵字會(huì)從左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中沒(méi)有匹配的行。上邊這樣寫左邊表要是在右邊表沒(méi)有對(duì)應(yīng)數(shù)據(jù)是查詢不出來(lái)的,原因就是f.isDel=0這個(gè)代碼問(wèn)題。

錯(cuò)誤寫法二:

SELECT g.*,f.* FROM groups g LEFT JOIN factor f ON f.groupId = g.id and g.isDel=0 and f.isDel=0

這種寫法g.isDel=0是不會(huì)生效的,導(dǎo)致查詢數(shù)據(jù)根本不對(duì)。

原因分析:

left join中關(guān)于where和on條件的幾個(gè)知識(shí)點(diǎn):

多表left join是會(huì)生成一張臨時(shí)表,并返回給用戶 where條件是針對(duì)最后生成的這張臨時(shí)表進(jìn)行過(guò)濾,過(guò)濾掉不符合where條件的記錄 on條件是對(duì)left join的右表進(jìn)行條件過(guò)濾,但依然返回左表的所有行,右表中沒(méi)有的補(bǔ)為NULL on條件中如果有對(duì)左表的限制條件,無(wú)論條件真假,依然返回左表的所有行,但是會(huì)影響右表的匹配值。也就是說(shuō)on中左表的限制條件只影響右表的匹配內(nèi)容,不影響返回行數(shù)。正確的寫法:

SELECT g.*,f.* FROM groups g LEFT JOIN factor f ON f.groupId = g.id and f.isDel=0 where g.isDel=0結(jié)論:

1.對(duì)左表添加條件限制需在where條件中添加,不能放到on后面2.對(duì)右表添加條件限制需放到on后面,在where條件中添加會(huì)有數(shù)據(jù)行數(shù)差異出現(xiàn)問(wèn)題。

到此這篇關(guān)于詳解mysql 使用left join添加where條件的問(wèn)題分析的文章就介紹到這了,更多相關(guān)mysql left join添加where內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: MySQL 數(shù)據(jù)庫(kù)
相關(guān)文章:
主站蜘蛛池模板: 中文字幕日韩精品在线 | 精品国产看高清国产毛片 | 日本色黄视频 | 黄在线网站 | 香蕉97超级碰碰碰免费公 | 国产亚洲综合成人91精品 | 在线免费污视频 | 欧美一级黄色片免费看 | 免费jizz在线播放视频高清版 | 一本大道香蕉中文日本不卡高清二区 | 色站综合 | 嘛豆传媒的短视频动漫 | 大学生久久香蕉国产线观看 | 加勒比一道本综合 | 黄色网址视频在线播放 | 国产成人19禁在线观看 | 欧美精品成人一区二区视频一 | 午夜精品久久久久久99热 | 国产99视频精品免视看7 | 无遮挡1000部拍拍拍免费 | 黄址在线观看 | 韩国免费高清一级毛片性色 | 国产白嫩美女在线观看 | 8888四色奇米在线观看不卡 | 国产在线xvideos | 久久成人18免费网站 | 女人大毛片一级毛片一 | 久99久女女精品免费观看69堂 | 91精品手机国产在线观 | 日本精品在线观看视频 | 播放中国女人毛片一级带 | 国产成人精品曰本亚洲77美色 | 99久久精品国产高清一区二区 | 久久国产这里只有精品 | 日本3级片| 国产成人一区二区三区高清 | 日日摸日日碰日日狠狠 | 在线成人精品国产区免费 | 日本一级在线播放线观看视频 | 成人免费视频在线观看 | 激情免费网站 |