文章詳情頁
mysql - inner join和left join的效率問題
瀏覽:104日期:2022-06-11 08:37:23
問題描述
inner join和left join各自在什么情景下執(zhí)行效率會(huì)相對(duì)高些呢?
問題解答
回答1:left join在任何場(chǎng)景下都不會(huì)比inner join的執(zhí)行效率高 因?yàn)閘eft join除了需要所有inner join的結(jié)果集以外還需要左表的所有沒有關(guān)聯(lián)上的數(shù)據(jù)
left join除了要求關(guān)聯(lián)字段有索引以外,最好將小表作為左表,因?yàn)闄z索的循環(huán)次數(shù)更少,前提是你的業(yè)務(wù)邏輯沒問題,因?yàn)椴煌膶懛ㄟ壿嬍遣灰粯拥?/p>
inner join會(huì)自動(dòng)選擇合適的表作為基礎(chǔ)表,也仍然要求有關(guān)聯(lián)字段索引,并且最好是int型檢索效率更高
回答2:說真心的,你問問題的方向也不太對(duì)。。。只是限制條件和索引還是查詢合理,速度都很快inner join 不以誰為基礎(chǔ),展示符合條件的數(shù)據(jù)left join 以左為基礎(chǔ),連右表
就效率來說 肯定是小表連大表快從一個(gè)MySQL left join優(yōu)化的例子加深對(duì)查詢計(jì)劃的理解
相關(guān)文章:
1. macOS Sierra 10.12 安裝mysql 5.7.1出現(xiàn)錯(cuò)誤2. mysql - 拖拽重排序后怎么插入數(shù)據(jù)庫(kù)?3. android - 安卓做前端,PHP做后臺(tái)服務(wù)器 有什么需要注意的?4. javascript - 天貓首頁首屏數(shù)據(jù)來源5. mysql 獲取時(shí)間函數(shù)unix_timestamp 問題?6. mysql - 僅僅只是把單引號(hào)與反斜杠轉(zhuǎn)義不用prepare statement能否避免sql注入?7. php - 生產(chǎn)環(huán)境下,給MySQL添加索引,修改表結(jié)構(gòu)操作,如何才能讓線上業(yè)務(wù)不受影響?8. mysql主主同步,從庫(kù)不同步應(yīng)該怎么解決?9. mysql在限制條件下篩選某列數(shù)據(jù)相同的值10. 新入手layuiadmin,部署到tp中。想用php自已寫一個(gè)后臺(tái)管理系統(tǒng)。
排行榜

熱門標(biāo)簽