MySql學(xué)習(xí)筆記(七):explain-索引的使用情況

主要內(nèi)容:explain的possible_key、key、key_len、ref、rows入門。

創(chuàng)新互聯(lián)建站為您提適合企業(yè)的網(wǎng)站設(shè)計(jì)?讓您的網(wǎng)站在搜索引擎具有高度排名,讓您的網(wǎng)站具備超強(qiáng)的網(wǎng)絡(luò)競(jìng)爭(zhēng)力!結(jié)合企業(yè)自身,進(jìn)行網(wǎng)站設(shè)計(jì)及把握,最后結(jié)合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網(wǎng)站策劃到成都網(wǎng)站制作、做網(wǎng)站、外貿(mào)營(yíng)銷網(wǎng)站建設(shè), 我們的網(wǎng)頁(yè)設(shè)計(jì)師為您提供的解決方案。

1、possible_key

表示在查詢過程中可能用到的索引。查詢涉及到的字段上如果有索引,則該索引會(huì)出現(xiàn)在possible_key列中表示可能用到,但實(shí)際上并不一定會(huì)用到。例:

MySQL> explain select * from t_blog where id = 1;

+----+-------------+--------+-------+---------------+---------+---------+-------+------+-------+
| id | select_type | table  | type  | possible_keys | key     | key_len | ref   | rows | Extra |
+----+-------------+--------+-------+---------------+---------+---------+-------+------+-------+
|  1 | SIMPLE      | t_blog | const | PRIMARY       | PRIMARY | 4       | const |    1 |       |
+----+-------------+--------+-------+---------------+---------+---------+-------+------+-------+
1 row in set

因?yàn)閕d是t_blog的主鍵,查詢時(shí)涉及到了該字段,possible_key列中有主鍵字樣。

2、key

表示再查詢過程中實(shí)際用到的索引,如果為null則表示沒有用到索引

如上例,key為主鍵,表示查詢過程中用到了主鍵。完整解讀:理論上要用到主鍵,實(shí)際上確實(shí)用到了主鍵。

存在理論上應(yīng)該用到某索引,但實(shí)際上沒有用到,即索引失效;

如果查詢中使用了覆蓋索引(select子句與符合索引順序和字段完全相同),possible_key為null,key為覆蓋索引。

3、key_len

索引中使用的字節(jié)數(shù),越短越好。這個(gè)值表示最大可能使用長(zhǎng)度而不是實(shí)際使用長(zhǎng)度,例如:

mysql> explain select * from t_blog where title = 'C語言精講';
+----+-------------+--------+------+---------------+---------+---------+-------+------+--------------------------+
| id | select_type | table  | type | possible_keys | key     | key_len | ref   | rows | Extra                    |
+----+-------------+--------+------+---------------+---------+---------+-------+------+--------------------------+
|  1 | SIMPLE      | t_blog | ref  | index_1       | index_1 | 153     | const |    1 | Using where; Using index |
+----+-------------+--------+------+---------------+---------+---------+-------+------+--------------------------+
1 row in set

此時(shí),查詢條件多一個(gè):

mysql> explain select * from t_blog where title = 'C語言精講' and typeId = 2;
+----+-------------+--------+------+---------------+---------+---------+-------------+------+--------------------------+
| id | select_type | table  | type | possible_keys | key     | key_len | ref         | rows | Extra                    |
+----+-------------+--------+------+---------------+---------+---------+-------------+------+--------------------------+
|  1 | SIMPLE      | t_blog | ref  | index_1       | index_1 | 158     | const,const |    1 | Using where; Using index |
+----+-------------+--------+------+---------------+---------+---------+-------------+------+--------------------------+
1 row in set

查詢條件變多,精度變高,同時(shí)key_len也在變大。

4、ref

顯示索引的哪一列被使用了,可能的話是一個(gè)常量。

一共有兩種格式:

1>const:常量,where <索引>='常量'

2><數(shù)據(jù)庫(kù)名>.<表名>.<字段名> :某數(shù)據(jù)庫(kù)中的某表中的某列被使用

5、rows

每張表有多少行被優(yōu)化器查詢

文章題目:MySql學(xué)習(xí)筆記(七):explain-索引的使用情況
網(wǎng)頁(yè)鏈接:http://bm7419.com/article6/jdssog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、、網(wǎng)站維護(hù)、建站公司做網(wǎng)站、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽(yáng)服務(wù)器托管