要想明白多表連線過程中索引是否起作用,哪個表的索引起作用。
首先先了解在join連線時哪個表是驅動表,哪個表是被驅動表:
1.當使用left join時,左表是驅動表,右表是被驅動表,
2.當使用right join時,右表時驅動表,左表是被驅動表,
3.當使用join時,mysql會選擇資料量比較小的表作為驅動表,大表作為被驅動表。
下面就為示例分析,供您參考學習,如有不對的地方請指正。
現有兩張表scan_necessary與necessary。scan_necessary表建立了普通索引necessaryid_index且資料量大,necessary表建立了普通索引guid_index且資料量小。
多表連線時永遠是被驅動表的索引起作用
MySQL多表連線刪除問題
delete是乙個蠻慎重的sql操作,一般來說這樣刪除操作都需要謹慎小心,以免造成不必要的損失。delete有下面這幾種情況 delete from t1 where條件 delete t1 from t1 where條件 delete t1 from t1,t2 where條件 delete t1...
MySQL多表連線刪除問題
delete是乙個蠻慎重的sql操作,一般來說這樣刪除操作都需要謹慎小心,以免造成不必要的損失。delete有下面這幾種情況 delete from t1 where條件 delete t1 from t1 where條件 delete t1 from t1,t2 where條件 delete t1...
mysql多表連線
現有表r,s如下 select from r,s 結果 注 不需要任何條件。結果為兩張表函式相乘 3x3 9 自連線 select e.empno,e.ename,m.empno,m.ename from emp e,emp m where m.mgr e.empno 分為三種 交叉連線 內連線 外...