手機(jī)微信可以做網(wǎng)站嗎nba最新比賽直播
1、索引的分類
(1)總分類
主鍵索引、唯一索引、常規(guī)索引、全文索引
(2)InnoDB存儲(chǔ)引擎中的索引分類
2、 索引的選取規(guī)則(InnoDB存儲(chǔ)引擎)
如果存在主鍵,主鍵索引就是聚集索引;
如果不存在主鍵,將使用第一個(gè)“唯一(UNIQUE)索引”作為聚集索引;
如果表沒(méi)有主鍵,并且沒(méi)有合適的唯一索引,那么InnoDB存儲(chǔ)引擎將自動(dòng)生成一個(gè)rowid作為隱藏的聚集索引;
3、說(shuō)明
(1)聚集索引(由主鍵構(gòu)成):
如果一張表有主鍵,主鍵構(gòu)建的主鍵索引就是一個(gè)聚集索引,其將會(huì)構(gòu)成一個(gè)B+樹(shù)。
根據(jù)聚集索引的結(jié)構(gòu),葉子節(jié)點(diǎn)下掛著的數(shù)據(jù),就是該主鍵所對(duì)應(yīng)的行數(shù)據(jù)。
(2)二級(jí)索引(name字段):
當(dāng)以“name”字段建立一個(gè)索引時(shí),也是以B+樹(shù)的形式存儲(chǔ)其節(jié)點(diǎn),其葉子節(jié)點(diǎn)下掛著的數(shù)據(jù),是其所在行的“聚集索引”,如name=‘Ruby’,其葉子節(jié)點(diǎn)下掛著的數(shù)據(jù),就是“id=8”。
(3) 執(zhí)行流程解釋:
當(dāng)執(zhí)行如下語(yǔ)句時(shí):
select * from user where name="Arm";
首先,找到“Arm”,然后找到“Arm”下面掛著的id,發(fā)現(xiàn)id=10,然后(在關(guān)于id字段的B+樹(shù)中)找到id=10,最后輸出其下掛著的數(shù)據(jù)。