免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
[MySQL] mysql優(yōu)化實(shí)例-為join表關(guān)聯(lián)字段增加索引

在排查所有查詢語句效率的過程中 , 發(fā)現(xiàn)了join關(guān)聯(lián)表的時(shí)候 , 被驅(qū)動(dòng)表沒有走索引而是進(jìn)行的全表掃描

實(shí)際的sql語句如下:

explain select a.* from audit_rules a left join audit_rules_detail b on a.id=b.rule_id where a.ent_id=23684

輸出:

+----+-------------+-------+------+---------------+------------+---------+-------+------+-------+
| id | select_type | table | type | possible_keys | key        | key_len | ref   | rows | Extra |
+----+-------------+-------+------+---------------+------------+---------+-------+------+-------+
|  1 | SIMPLE      | a     | ref  | idx_ent_id    | idx_ent_id | 4       | const |   12 |       |
|  1 | SIMPLE      | b     | ALL  | NULL          | NULL       | NULL    | NULL  |   35 |       |
+----+-------------+-------+------+---------------+------------+---------+-------+------+-------+

看到表b是全表掃描 , 這是因?yàn)閎的字段rule_id沒有索引

增加上索引以后

+----+-------------+-------+------+---------------+-------------+---------+--------------+------+-------------+
| id | select_type | table | type | possible_keys | key         | key_len | ref          | rows | Extra       |
+----+-------------+-------+------+---------------+-------------+---------+--------------+------+-------------+
|  1 | SIMPLE      | a     | ref  | idx_ent_id    | idx_ent_id  | 4       | const        |   12 |             |
|  1 | SIMPLE      | b     | ref  | idx_rule_id   | idx_rule_id | 4       | sinanet.a.id |    1 | Using index |

MySQL是只支持一種JOIN算法Nested-Loop Join(嵌套循環(huán)鏈接)
當(dāng)關(guān)聯(lián)字段有索引時(shí),走的是Index Nested-Loop Join(索引嵌套鏈接)
沒有索引時(shí)會(huì)走,Block Nested-Loop Join比Simple Nested-Loop Join多了一個(gè)中間join buffer緩沖處理的過程

沒有索引時(shí):

 

 

有索引時(shí)

 

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
MySQL這些底層執(zhí)行原理,早已成必備了!
MySQL索引原理及慢查詢優(yōu)化(好文)
34.到底可不可以使用joinundefined
深入剖析SQL JOIN原理,助你掌握數(shù)據(jù)連接的奧秘!
MySQL連接查詢中索引的重要性
MySql 你知道什么情況下適合使用Join 聯(lián)表查詢嗎 ?
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服