SQL性能--left join和inner join的运行速度与效率
生活随笔
收集整理的這篇文章主要介紹了
SQL性能--left join和inner join的运行速度与效率
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
①大家都知道,sql盡量使用數據量小的表做主表,這樣效率高,如果使用數據量大的表做主表,此時使用left join 就會比較慢,即使關聯條件有索引。但如果使用inner join速度就較快。因為inner join 在執行的時候回自動選擇最小的表做基礎表,效率高,總之相比之下inner join不管從效率還是速度上都優于left join,畢竟left join 會多一部分邏輯運算,inner join 是只需要返回兩個表的交集部分,left join多返回了一部分左表沒有返回的數據。
②選擇inner join還有個好處,不會產生null,有些表我們在定義的時候某些字段不允許存在null,如果用left join就可能會產生null,此時軟件就會報錯,而inner join可以避免
③在實際運用中選擇inner join還是left join這個需要根據實際場景進行選擇,并不是所有的地方都能用inner join的,建議能用則用
總結
以上是生活随笔為你收集整理的SQL性能--left join和inner join的运行速度与效率的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql中事务的启动方式
- 下一篇: in会走索引吗